자고일어나니코딩왕
자일코의 CODING
자고일어나니코딩왕
전체 방문자
오늘
어제
  • 분류 전체보기 (64)
    • [Linux]리눅스 (1)
    • [NETWORK]네트워크 (17)
    • [PS] 알고리즘문제풀이 (16)
    • [SQL] (13)
    • [ALGORITHM]알고리즘개념 (9)
    • [DATA_STRUCTURE]자료구조 (1)
    • [PYTHON]파이썬 (0)
    • [정보처리기사] (5)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • virtualbox
  • 리눅스
  • BIOS #MBR #LILO #Kernel #init
  • ssh
  • 리눅스 #파일시스템 #디렉토리
  • 원격접속

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
자고일어나니코딩왕

자일코의 CODING

[NETWORK]#4.네트워크 계층(NETWORK LAYER)
[NETWORK]네트워크

[NETWORK]#4.네트워크 계층(NETWORK LAYER)

2020. 5. 18. 01:53

Network Layer


Packetizing


  • payload를 출발지에서 Network layer계층의 packet으로 encapsulate하고 도착지에서 Network layer로 부터 decapsulate 한다.

  • payload를 출발지에서 도착지까지 변환하거나 사용하지 않고 전달한다.(예를들면 편지배달부는 편지를 배달할때 편지를 읽지 않는다.)

Routing and Forwarding


  • forwarding - 결정된 경로되로 ( 적절한 input에서 output으로) 페킷을 움직이는 것이다.

  • routing - 패킷이 이동할 경로가 많기때문에 그 경로를 미리 지정해 두는 것이다.

  • routing algorithm은 end에서 end까지의 경로를 정하는 것이다.

  • Forwarding table은 output 를 결정한다.

Connection setup


  • 3개의 중요한 기능들 network 아키텍쳐에서

    • ATM , Frame , Relay , X.25

    • 데이터그램이 전송되기전에 두 호스트와 전달되는 라우터들 간에 virtual connection이 생성된다.

      • 이런것들이 과거에는 존재했다. 만약에 패킷 50개가 따닥따닥 붙어있으면 그렇게까지 도착할 수 있도록 해준다. Connection setup을 해주지않으면 그렇게 도착할 수가 없다.

IP


 

  • IP는 모래시계형 internet protocol architecture에서의 중간이다.

  • multiple higher layer protocol

  • multiple lower layer protocol

  • Network layer에는 단한가지의 프로토콜만 존재한다.

IP service


  • IP의 delivery서비스는 minimal하다.(하는 일이 없는 것이 최대 장점이다.)

  • IP는 unreliable , connectionless , Best effort를 제공한다.(datagram service라고도 부른다.)

    • Unreliable - IP는 손실된 패킷을 복구하려고 하지 않는다.

    • Connection less

      • 각각의 패킷들(datagram)은 독립적으로 사용된다.

      • IP는 host간에 논리적인 순서로 전달될 수 있다는 것을 인식하지 못한다.

    • Best Effort

      • 이 말의 뜻은 어떠한 것도 보장해 주지 않는다는 것이다.

      • 즉 최선을 다해서 널럴한 네트워크 환경이라면 많은 트래픽을 보낸다는 뜻이고 널럴하지 않다면 딱 그만큼만 최선을 다해서 보낸다는 뜻이다.(결국에는 부정적인 말)

  • 결과

    • 더 높은 레이어 프로토콜들이 loss나 duplicate packe에 대해서 처리해야한다.

    • 패킷들은 순서대로 전달되지 않을 수 있다.

  • IP는 3가지 서비스를 제공한다.

    • 1:1 - Unicast

      • 하나의 트래픽을 발송하더라도 다수의 HOST에게 전달한다면 그 트래픽을 HOST의 수 만큼 복사하여 각 HOST에게 전달한다. 따라서 높은 신뢰성을 자랑하지만 트래픽의 수의 증가로 회선에 부담이 될 수 있다.

    • 1:all - BroadCast

      • 하나의 트래픽이 다수의 HOST에게 전송할때 하나의 트래픽으로 전송한다. 따라서 회선에 부담을 주지는 않지만 받고 싶지 않는 HOST들도 모두다 트래픽을 전달 받게 된다.

    • 1: N - Muticast

      • 원하는 host에게만 트래픽을 전달한다. Uni + Broad

  • IP multicast는 many-to-many 서비스를 제공하기도 한다.

  • IP multicast는 다른프로토콜을 지원해야한다.(IGMP, multicast routing)

    • 하나를 복사해서 여러군대로 보내주는 것이다 예를 들면 NAVER CAST

Field of the IP Header


  • Version(4bit) - ip protocol version number이다. 현재 버전은 4이고 그후에는 6이다.

  • Header length(4bits) - IP header의 length 이다.(4byte의 배수이다.)

  • DS/ECN(1byte)

    • 이 필드는 Type of Service ( TOS)라고부른다.

    • 이 필드의 역할은 재정의 되었다. 그러나 TOS의 해석과 "역방향으로 호환된다."

    • 사용자에게 제공하는 서비스의 품질에 관련된 내용을 다룬다.

      • DS ( Differentiated Service) 6bits

        • 서비스의 level을 지정하는데 사용된다.(현재의 인터넷에는 사용되지 않음)

      • ECN(Explicit congestion Notification) 2 bits

        • TCP에서 사용되는 새로운 메커니즘

  • TTL(time to live) 1byte

    • 페킷이 삭제되기 전에 가장 긴 경로를 지정한다.

    • TTL 필드의 역할

      • 라우팅 루프가 발생되엇을때 패킷으 드롭되는것을 확정짓는다.

        • sender의 값지정

        • 라우터는 value 값을 1씩 감소시킨다.

        • value값이 0에 도달하면 패킷을 드롭시킨다.

  • Protocol(1byte)

    • 상위계층 프로토콜을 지정한다.

    • 상위계층의 demultiplexing에 사용된다.

  • Header checksum(2byte)

    • 단순히 긴 16비트짜리 체크섬이다 페킷의 헤더에 의해 계산되는

  • Options

    • 보안제한

    • Record Route : 패킷을 처리하는 각 라우터는 헤더에 IP주소를 추가시켜준다.

    • Timestamp : 라우터는 패킷을 처리하는 ip주소와 시간을 헤더에 추가한다.

    • loose source routing : 통과해야하는 라우터의 목록을 지정한다.

    • Strict source routing : 통과할수 있는 유일한 라우터를 지정한다.

  • Padding

    • 패딩 바이트들은 헤더가 4바이트의 경계애서 끝나도록 추가된다.

MTU


  • IP페킷의 최대 크기는 65535이지만 데이터링크 프로토콜은 이것보다 훨씬 작다.

    • EX) Ethernet 프레임들은 최대 1500바이트의 payload를 가질 수 있다.

      • 즉 Ethernet Frame 에 encapsulate된 IP패킷들은 1500바이트를 넘을 수 없다.

  • Network 혹은 DataLink에서 하나의 프레임 혹은 페킷에 담겨 전송될 수 있는 최대 사이즈를 MTU라고 한다.

    • Ethernet -1500

    • FDDI -4352

    • 802.3 - 1492

    • 802.5 - 4464

    • ATM AAL5 - 9180

    • PPP - negotiated

IP Fragmentation, Reassembly


  • 네트워크들은 각각 다른 link type과 다른 MTU를 갖는다.

  • 큰 IP 패킷은 net으로 분할된다

    • 하나의 패킷은 여러개의 패킷으로 분할된다.

    • 최종 목적지에서만 재조립된다.

    • IP의 헤더 비트들은 Fragment들을 식별하고 순서에 관련되어있다.

  • Fragmetation은 sender혹은 시작되는 라우터에서 이루어진다.

  • 동일한 패킷을 여러번 분할될 수 있다.

  • 패킷의 재조립은 도착지에서 이루어진다.

  • Identification - 페킷이 단편화될때 identification이 전부다 동일해 같다는것을 가르쳐준다.

  • Flags

    • DF ( don't fragment) - 패킷이 너무작으면 단편화되면 안되고 버려져야한다.

    • MF( more fragment) - 이 패킷은 단편화의 일부이고 추가적인 단편화된 패킷이 있다는 뜻이다.

  • Fragment offset

    • 단편화 되기전 데이터의 시작으로부터의 차이

  • Total length

    • 헤더와 데이터의 길이를 합친 현재 fragment의 총 길이

'[NETWORK]네트워크' 카테고리의 다른 글

[NETWORK]#6. TCP  (0) 2020.05.18
[NETWORK]#5.전송계층(TRANSPORT LAYER)  (0) 2020.05.18
[NETWORK]#3.OSI  (0) 2020.05.18
[NETWORK]#2.인터넷(INTERNET)  (0) 2020.05.18
[NETWORK] #1.IP  (0) 2020.05.16
    '[NETWORK]네트워크' 카테고리의 다른 글
    • [NETWORK]#6. TCP
    • [NETWORK]#5.전송계층(TRANSPORT LAYER)
    • [NETWORK]#3.OSI
    • [NETWORK]#2.인터넷(INTERNET)
    자고일어나니코딩왕
    자고일어나니코딩왕
    열코!

    티스토리툴바