Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IPv4 프로토콜 #1 #36

Open
Jangchanhi opened this issue Jul 26, 2022 · 0 comments
Open

IPv4 프로토콜 #1 #36

Jangchanhi opened this issue Jul 26, 2022 · 0 comments

Comments

@Jangchanhi
Copy link
Owner

Ch7. IPv4
image

#IP의 특징

  • 신뢰성이 없다.
  • 비연결형인 데이터그램 프로토콜이다.
  • 최선의 노력(best effort) 전달 서비스이다.
    => IP 패킷은 오류 발생, 분실, 틀린 순서로 도착, 지연될 수 있으며 N/W 내 혼잡의 문제를 발생시킬 수 있음.
  • IP는 데이터그램 방법을 사용하는 패킷 교환 네트워크를 위해 설계된 비연결형 프로토콜이다. 이로 인해 데이터그램이 독립적으로 처리되고 목적지까지 다른 경로를 통해 전달될 수 있다. 이 데이터 그램은 발신지에서 같은 목적지로 가는 도중 순서변경, 분실, 훼손 등이 될 수 있다.

IP는 위의 모든 문제들을 해결하기 위해 상위 계층의 프로토콜에 의존한다.

#7.2 데이터 그램 : 가변 길이의 패킷으로 헤더와 데이터의 두 부분으로 구성된다.
- 헤더는 20 ~ 60 바이트로 라우팅과 전달에 필요한 정보를 포함한다.
image

TCP/IP에서는 보통 헤더를 4바이트 단위로 보여줌.
(1) 버전(VER) [4bit] : IP 프로토콜의 버전을 나타냄, 시스템이 다른 버전의 IP S/W를 사용한다면 데이터그램을 폐기함.

  • 0100(IPv4), 0110(IPv6)

(2) HLEN(헤더길이_4bit) : 헤더의 길이, 데이터그램의 헤더 길이가 20~60 바이트 사이에서 변할 수 있기에 필요함.

  • 선택 사항 없으면 헤더의 길이는 20byte, 필드값(5)
  • 선택 사항 필드가 최대길이면 필드값(15), 15X4=60
    image

(3) Service type(0000 0000 [8bits]) : 서비스 유형 :

  • TOS : type of service(8bits) 손실도 없어야 하고 실시간 혼잡도 없어야 함.
    #Differentiated service (DS) : DSCP
    (1) BE (BEST effort)
    (2) EF (Expedited forwarding) : low-loss, low-latency traffic
    (3) AF (Assured forwarding) : similar to VBR
    image

  • Total length(16bits) : 전체 길이(헤더를 포함한 데이터그램의 전체 길이)

  • Identification(16bits)[중요]

  • Time to live(8bits)[중요] : time(몇 번) of hops : 이 패킷이 지나갈 수 있는 라우터의 개수를 정의한 것
    => 최대 128개의 노드까지만 지나갈 수 있다. (하나 지나갈 때마다 1씩 감소 시킴),
    => 나한테 수신되었을 때 1이면 0이 되고 그러면 포워 딩을 하지 않는다.
    image

  • Protocol(8bis) : ip 패킷안의 데이터(상위 레이어) 프로토콜이 무엇인지 나타내는 것
    ex) 이 패킷은 tcp 패킷이야, udp 패킷이야 등등을 알려줌

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant