달력

5

« 2024/5 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2014. 12. 10. 10:38

네트워크 Protocol NE 스터디/네트워크 입문2014. 12. 10. 10:38

1.  프로토콜 기능

 

   - 흐름 제어


   - 에러 검출


   - 동기화

 

2. 프로토콜 유형

 

   - 네트워크 구성 프로토콜

 

      1) LAN 구성 프로토콜 : Ethernet, Token Ring, FDDI, 무선


      2) WAN 구성 프로토콜 : SLIP, HDLC, PPP, Frame-Relay, X.25, ATM....


         (WAN 서비스 : 전용회선, PSTN, ISDN, ATM, Frame-Relay, X.25, MPLS...)


   - 네트워크 제어 프로토콜

 

      1) Layer 4 트랜스포트 계층

 

        1. TCP(연결 지향성 프로토콜)
                
          - 데이터 전송이전에 상호 통신 수립 단계를 시작한다.


          - 통신 수립 단계를 위해 TCP는 3-Way 핸드 쉐이킹 과정을 실시한다.


          - 하는 이유 : 상대방과 확실한 연결을 실시한 이후에 신뢰적인 데이터 전송을 하기위해서이다.


          - 통신 수립 단계를 거쳐야지만 데이터 전송이 실시된다.


          - 상위 계층에서 생성된 데이터에 TCP 헤더를 캡슐화를 실시한다.


          - 캡슐화된 데이터를 세그먼트라고 한다.


          - TCP 헤더 내용

 

               a. 출발지 포트 번호, 목적지 포트 번호 (Ex : 호텔 방번호)


               b. 일련 번호 : 데이터 분할 및 재조립 할때 참조하는 번호


               c. 확인 번호 : 데이터 수신 확인 참조 번호(재전송시 참조)


               d. 제어 플래그(기본값 0) : URG, FIN, RST, SYN, ACK, PSH

               (상대방에게 알려줄 내용 비트를 1Bit로 하여 전송한다.)


               e. 에러 체크

 

       - TCP는 내가 보낸 정보에 대해서 ACK를 수신해야한다. 만약, ACK 수신이 안될 경우에는 재전송을 실시한다.

 

           - TCP 재전송을 실시하는 경우

 

             A-----------------------------B
                                        <-- 데이터 전송
              
         a. A에서 수신한 데이터를 확인했을때, 손상된 내용을 발견하면 폐기한다.

            그렇기 때문에 A는 B에게 ACK를 전송하지 않기 때문에 B는 다시 A에게 재전송을 실시한다.

 

         b. B가 A에게 데이터 전송중 데이터가 사라지면, A는 B로부터 데이터를 수신하지 않는 경우가 되기때문에,

            A는 B에게  ACK를 전송하지 않기때문에 B는 다시 A에게 재전송을 실시한다.

 

         c. 데이터를 수신한 A가 B에게 ACK 전송중에 ACK가 사라지면, B는 A로부터 ACK를 수신하지 못한 경우가

            되기때문에, B 는 다시 A에게 재전송을 실시한다.

 

           - TCP 재전송을 사용하면 안되는 데이터 : 음성, 비디오, 실시간 트래픽

 

          - 즉, TCP는 신뢰적인 데이터 전송을 하는 장점을 갖고 있지만, 대신 통신 수립 과정때문에 지연이 생긴다.

            또한 TCP 재 전송 동작으로 인한 윈도우 싸이즈 증가로 트래픽 부하가 생기는 단점을 갖고 있다.

 

          - TCP를 사용하는 어플리케이션 프로토콜

 

              a. HTTP(WWW) 포트 번호 : 80


              b. TELNET 포트 번호 : 23


              c. SSH 포트 번호 : 22


              d. SMTP 포트 번호 : 25


              e. POP3 포트 번호 : 110


              f. FTP 포트 번호 : 20, 21


              g. BGP 포트 번호 : 179

 


          2. UDP(비연결 지향성 프로토콜)

 

          - 통신 수립 단계 없이 데이터 전송을 실시한다.


          - 통신 수립 단계가 없기 때문에 신속한 데이터 전송을 실시한다. 대신,

            데이터 전송에 안정성을 보장하지 않는다.


          - 'Best-Effort' 서비스라고 한다.


          - 상위 계층에서 생성된 데이터에 UDP 헤더를 캡슐화를 실시한다.


          - 캡슐화된 데이터를 세그먼트라고 한다.


          - UDP 헤더 내용

 

              a. 출발지 포트 번호, 목적지 포트 번호 (Ex : 호텔 방번호)


              b. 에러 체크

 

          - UDP로 수신한 데이터가 손상되면 폐기한다. UDP는 ACK 수신이라는 개념이 없기때문에

            재전송을 실시하지 않는다.

 

          - 즉, UDP는 신속한 저용량 데이터 전송할때 사용하면 효율적이며,

            대신 비신뢰적인 데이터 전송을 실시한다.

 

          - UDP를 사용하는 어플리케이션 프로토콜

 

             a. DNS 포트 번호 : 53


             b. TFTP 포트 번호 : 69


             c. SNMP 포트 번호 : 161


             d. DHCP 포트 번호 : 67(서버), 68(클라이언트)


             e. RIP 포트 번호 : 520


      2) Layer 3 네트워크 계층

 

          1. IP(비연결 지향성 프로토콜)
         
          - 상위 계층(트랜스포트 계층)에서 생성된 데이터에 IP 헤더를 삽입하여 캡슐화한다.


          - 캡슐화된 데이터를 패켓이라고 한다.


          - IP 헤더 내용

 

             a. 출발지 IP 주소, 목적지 IP 주소 (Ex : 호텔 주소)


             b. ToS(Qos때 사용하는 비트)


             c. 에러 체크

 

             d. 일련 번호

 

          - IP로 캡슐화한 데이터 전송시 통신 수립 단계가 없으며, 보낸 데이터에 대한 수신 확인을 할수 없다.

            그렇기 때문에 비신뢰적인 데이터 전송방식이다.

 

          - 'Best-Effort' 서비스라고 한다.


          2. ICMP

 

          - IP 프로토콜 캡슐화된 데이터는 목적지까지 전송이 비신뢰적이기 때문에 ICMP 프로토콜을 이용하여

            IP에 대한 신뢰성을 보장시킨다.

 

          - 대표적인 명령어가 'Ping' Command이다.

 

          - ICMP Echo를 목적지로 전송하고, Echo를 수신한 목적지는 Echo-Reply로 응답을 실시한다.

             (TCP 동작 유사)


          3. ARP

 

          - Layer 2 계층(데이터 링크 계층)에서는 데이터 전송시 48Bit MAC 주소를 사용한다.


          - ARP란 상대방 IP 정보를 이용하여 상대방 MAC 주소를 학습하는 프로토콜이다.
          
                   -> ARP 요청
               A-----------------------------B
            10.1.1.1                                 10.1.1.2
         00-19-D1-EF-FC-40             00-19-d1-f0-09-80


        - A는 현재 B에 대한 MAC 주소를 모르기 때문에, 다음과 같은 내용을 요청한다.

 

           1) A -> 'IP 10.1.1.2'를 사용하는 사용자의 MAC 주소는 무엇입니까?.


           2) '1)' 내용을 ARP 브로드케스트 요청을 실시하여 전체 대상으로 광고한다.

              (이유: B가 어디있는지 몰르기때문에~)


           3) 위의 내용을 수신한 B는 '쟤가 10.1.1.2 IP 사용자이며, 쟤 MAC 주소는 00-19-d1-f0-09-80 입니다.'

 

             라는 내용을 유니케스트로 A에게 전송한다.

 

        - Layer 3 계층(네트워크 계층)에서는 데이터 전송시 32Bit IP 주소를 사용한다.


        - Layer 3 계층에서 수신한 데이터를 Layer 2 계층(데이터 링크 계층)으로  전송하기 위해서는

          목적지 IP에 대한 MAC 주소를 알아야한다. 


        - IP 통신을 실시하여 데이터를 수신한 라우터는 자신의 ARP 테이블을 확인하여

          목적지 IP에 대한 MAC 주소를 확인하여 데이터 링크 계층으로 데이터를 전송한다.

          그렇기 때문에 라우터는 ARP 테이블 정보가 필수이다.

 

        - 즉, 데이터 링크 계층 구간에서 데이터 전송시에 사용되는 IP 주소는 단지,

          ARP를 이용하여 MAC 주소를 학습하기 위한 도구일뿐이다.


   - 네트워크 계층간에 데이터 전송을 보장하는 라우팅 프로토콜

 

      1) RIP Version 1, RIP Version 2


      2) IGRP, EIGRP


      3) OSPF, ISIS


      4) BGPv4

 

     - 라우터와 라우터 사이에서 경로를 학습하여 Layer 3 데이터(패켓)을 목적지까지

        전송을 보장하기 위한 프로토콜이다.

:
Posted by God Seed