1 / 37

컴퓨터 네트워크 7 주차

컴퓨터 네트워크 7 주차. 수원과학대학교 정보통신과. 오늘의 목표. ARP 를 이해한다 . RARP 를 이해한다 . ICMP 를 이해한다 . IGMP 를 이해한다. 7.1 ARP. 주소 변환 프로토콜 (ARP: address resolution protocol) IP 주소를 MAC 주소로 변환 , MAC 주소를 알아야 전송이 가능 ARP operation. IP 주소 141.23.56.23 을 갖고 있는 호스트의 MAC 주소를 알려달라고 메시지를 브로드캐스팅. 해당 호스트가

clive
Télécharger la présentation

컴퓨터 네트워크 7 주차

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 컴퓨터 네트워크 7주차 수원과학대학교 정보통신과

  2. 오늘의 목표 • ARP 를 이해한다. • RARP 를 이해한다. • ICMP 를 이해한다. • IGMP 를 이해한다.

  3. 7.1 ARP • 주소 변환 프로토콜 (ARP: address resolution protocol) • IP 주소를 MAC 주소로 변환, MAC 주소를 알아야 전송이 가능 • ARP operation IP 주소 141.23.56.23을 갖고 있는 호스트의 MAC 주소를 알려달라고 메시지를 브로드캐스팅 해당 호스트가 자신의 물리주소는 A46EF45983AB라고 응답

  4. ARP Packet

  5. ARP 패킷 형식 • HTYPE (hardware type) – LAN의 유형, 예로 이더넷의 경우는 1 • PTYPE (protocol type) – ARP를 사용하는 네트워크 프로토콜을 정의, 예로 IPv4의 경우는 0x0800 • HLEN (hardware length) –물리주소의 길이, 이더넷의 경우는 6 • PLEN (protocol length) - 네트워크주소의 길이, IPv4의 경우는 4 • OPER (operation) – ARP 요청인 경우는 1, 응답인 경우는 2 • SHA (sender hardware address) –송신 호스트의 물리주소 • SPA (sender protocol address) –송신 호스트의 네트워크 주소 • THA (target hardware address) –수신 호스트의 물리주소 • TPA (target protocol address) –수신 호스트의 네트워크 주소

  6. Encapsulation of ARP Packet • ARP 패킷은 데이터링크층 프레임에 캡슐화(encapsulation)됨 • 이더넷 프레임의 type 필드는 0x0806으로 전송되는 데이터가 ARP임을 나타냄

  7. ARP 헤더의 값 –예제 7.1 브로드캐스팅 물리주소 사용 수신호스트의 물리주소는 0으로 채워서 보냄 FFFFFFFFFFFF 0001 자신의 물리주소 자신의 물리주소로 응답

  8. 7.2 RARP • Reverse Address Resolution Protocol (역주소 변환 프로토콜) • 물리주소에 대응되는 IP 주소를 알아낼 때 사용 • 과거 디스크가 없는 시스템이 네트워킹을 하기 위해 IP 주소가 필요할 때 외부 서버로부터 받아오기 개발됨 • 현재는 보다 기능이 풍부한 BOOTP나 DHCP로 역할이 대체되어 사용되지 않음

  9. 7.3 ICMP • IP의 단점 • 여러가지 이유에 의해 패킷이 폐기되어도 발신지에게 그 사실을 통보할 수단을 보유하고 있지 않음 • 다른 라우터나 호스트의 상태를 파악하기 위한 방법 부재 • ICMP (internet control message protocol) • 위 2가지 단점을 보완하기 위한 IP의 보조프로토콜 • 네트워크층 프로토콜이나 IP 패킷에 캡슐화되어 전달됨 IP 헤더의 protocol 필드 값은 1

  10. ICMP 메시지 유형

  11. ICMP 메시지 형식 • Type – ICMP 메시지 타입 • Code –특정 메시지에 대한 세부 타입 • Checksum –전체 메시지 내용에 대한 16비트 checksum

  12. 7.3.1 ICMP 오류 보고 메시지 • ICMP 오류 보고의 특징 • 오류 메시지는 최초 송신지에게 전달된다. • 오류의 종류 • 목적지 도달 불가, 송신지 억제, 시간경과, 매개변수 문제, 재지정 • 오류가 보고되지 않는 경우 • ICMP 오류 메지지를 전달하는 데이터그램에 오류가 발생할 때 • 단편화된 첫번째 데이터그램이 아닌 데이터그램에 오류가 발생할 때 • 멀티캐스트 주소를 가진 데이터그램에 오류가 발생할 때 • 127.0.0.0이나 0.0.0.0과 같은 특별한 주소를 가진 데이터그램에 오류가 발생할 때 • 오류 메시지의 데이터 부분에는 원래 데이터그램의 IP 헤더와 데이터 중 처음 8바이트(TCP 나 UCP 포트번호가 포함된 TCP 헤더의 일부나 UDP 헤더)가 포함됨

  13. 목적지 도달 불가 (Desitnation Unreachable) 메시지 • 라우터나 호스트가 데이터그램을 라우팅하거나 배달할 수 없을 때 데이터그램을 폐기하고, 송신지 호스트에게 “ICMP Destination Unreachble”(목적지 도달 불가) 메시지를 보냄 • 코드 필드에 16개의 오류 코드를 기록하여 오류 원인을 표시함 • 표 9.6 참고

  14. 발신지 억제 (Source Quench) 메시지 • 라우터나 호스트에서 처리할 수 있는 속도 이상의 데이터그램이 계속 유입되어 버퍼의 용량를 초과하게 되면 데이터그램이 폐기되는데 이때 이 메시지를 발신 호스트로 보낸다. • 이 메시지를 받은 발신 호스트는 발신 속도를 일시적으로 떨어뜨린 후 다시 서서히 올리는 데 이 메시지가 또 수신되면 다시 속도를 떨어뜨림으로써 흐름제어를 제공한다.

  15. 시간 초과 (Time Exceeded) 메시지 • 데이터그램이 라우터를 통과할 때마다 TTL 필드값이 1씩 줄어드는데 이 필드가 0이되면 라우터는 이 데이터그램을 폐기하고 폐기 내역을 송신 호스트에게 통보한다 (Code 필드값 = 0). • 또한 단편이 손실되어 재조립 시간이 타임 아웃되었을 경우도 이 메시지가 송신호스트에게 전달된다 (Code 필드값 = 1). • 시간초과 메시지를 이용한 대표적인 응용: traceroute (Windows: tracert)

  16. traceroute 목적지까지의 경로상에 위치한 라우터들의 주소를 알아낼 수 있다.

  17. 매개변수 문제 (Parameter Problem) 메시지 • 라우터나 호스트는 데이터그램의 IP 헤더 매개변수에 오류가 있을 경우 데이터그램을 폐기하고 parameter problem 메시지를 송신지로 보냄 • 포인터 필드값은 오류가 있는 위치를 가리킨다. • 코드 필드 • 0x00: 헤더의 필수 필드에 오류가 있다. • 0x11: 헤더의 옵션 필드에 오류가 있다.

  18. 재지정 (Redirect) 메시지 (1) • 경로 재지정 메시지로 라우터가 목적지 네트워크에 대해 더 좋은 경로가 있다는 것을 호스트에게 알려줌 • 재지정의 예

  19. 재지정 메시지 (2) • 코드값에 따라 재지정 정보가 결정됨

  20. 3.7.2 ICMP 질의 메시지 • 네트워크 문제 진단 목적 • 질의 메시지의 종류

  21. 에코요청과 응답 (Echo Request and Reply) 메시지 • 원격 네트워크나 호스트에 도달할 수 있는지를 테스트 하기 위한 것. • ICMP 에코 요구(Type&Code:0x0800) 메시지를 받은 원격 라우터나 호스트는 ICMP 에코 응답(Type&Code:0x0000)을 사용하여 수신된 메시지의 내용을 그대로 송신지로 보내준다. • 전형적인 예: ping • 송신측은 identifier와 sequence number에 ping 메시지마다 서로 다른 값을 부여함으로써 각 ping에 대한 응답메시지를 구별한다.

  22. 타임스탬프 요청과 응답 메시지 • 어떤 시스템이 다른 시스템에게 현재 시간을 알아보고자 할 때 사용된다. 이렇게 알아낸 시간 정보는 round-trip delay와 혼잡도를 측정할 때 사용한다. 요청하는 시스템은 originate timestamp 필드에 송신시간을 적어 보내고, 요청받은 시스템은 receive timestamp에 수신시간을 그리고 transmit timestamp에 응답을 전송하는 시간을 적어 보낸다. • 왕복시간(round-trip delay) = (응답을 받은 시간 – transmit time stamp) + (receive timestamp – original timestamp)

  23. 주소 마스크 요청과 응답 메시지 • 디스크가 없는 시스템이나 자신의 서브넷 마스크를 특별히 요청하고자 호스트가 사용한다. 라우터가 보통 이 메시지에 응답한다.

  24. 라우터 정보 요청과 광고 메시지 • 호스트가 자신의 네트워크에 연결된 라우터의 주소 및 라우터의 정상동작을 알고자 할 때 발송 • 라우터 요청(router solicitation) 메시지 형식 • 라우터 광고(router advertisement) 메시지 형식

  25. 7.4 IGMP • IGMP란? • Internet Group Management Protocol • 멀티캐스트 패킷을 라우팅하는 프로토콜이 아니라, IP 멀티캐스트 그룹의 소속원을 관리하는 프로토콜 • IP 멀티캐스트 그룹 – 특정 멀티캐스트 주소를 가진 IP 패킷을 주고받을 수 있는 호스트나 라우터 집단 • 멀티캐스트 라우터(mrouter) • 멀티캐스트 패킷을 보내주고, 멀티캐스트 그룹을 관리하는 라우터 • 멀티캐스트 그룹을 관리하는 프로토콜 – IGMP • 멀티캐스트 데이터를 전달하는 프로토콜 - IP

  26. 7.4.2 IP 멀티캐스팅의 특징 • 멀티캐스트 그룹의 멤버십은 동적이다. • 멀티캐스트 그룹의 크기 제한은 없다. • 한 멀티캐스트 그룹에 속하는 호스트들이 여러 네트워크에 산재해 있을 수 있다. • 호스트는 멀티캐스트 그룹에 속하지 않고도 멀티캐스트 패킷을 보낼 수 있다. • 호스트가 멀티캐스트 패킷을 받으려면 해당 응용 프로그램이 이를 IP에게 알려주어야, 이더넷의 주소를 프로그래밍하여 원하는 IP 멀티캐스트 주소에 대응하는 MAC 주소의 패킷을 받을 수 있음.

  27. 7.4.3 멀티캐스트 레벨 • 레벨 0: 멀티캐스트 패킷을 받지도 보내지도 않음 • 레벨 1: 멀티캐스트 패킷을 보내되 받지 않음 • 레벨 2: 멀키개스트 패킷을 보내고 받을 수 있음

  28. 7.4.4 멀티캐스트 주소 • 클래스 D 주소 • 224.0.0.0 ~ 239.255.255.255 • 224.0.0.0 – 사용 안함 • 224.0.0.1 ~ 224.0.0.255 – 라우팅 프로토콜용 • 224.0.1.0 ~ 238.255.255.255 – 멀티캐스트 응용 프로그램용 • 239.0.0.0 ~ 239.255.255.255 – 관리용 응용 프로그램용

  29. 7.4.5 IGMP 메시지 • IPv4의 IGMP의 버전은 IGMPv2 • IGMP 메시지 종류 • 일반질의(general query), 특별질의(special query), 멤버십보고(membership report), 탈퇴보고(leave report) • IGMP 메시지 형식 메시지 종류 일반/특별질의-0x11 멤버십보고 – 0x16 탈퇴보고 – 0x17 질의에 응답해야 하는 시간 10분의1초 단위 오류 검사

  30. 7.4.6 IGMP 동작

  31. 호스트의 동작 • 호스트의 동작 • 프로세스가 새로운 멀티캐스트 그룹에 참여한다면, 호스트는 멤버십 보고 메시지 발송 • 프로세스가 기존의 멀티캐스트 그룹에 참여한다면, 호스트는 아무 것도 안함 • 멀티캐스트 그룹에서 모든 프로세스가 탈퇴하였다면 탈퇴 보고 메시지를 발송

  32. 라우터의 동작 • 라우터의 동작 • 어떤 호스트가 새로운 멀티캐스트 그룹에 가입하였다면 멤버십 보고 메시지를 다른 라우터에게 발송 • 모든 호스트가 특정 멀티캐스트 그룹에서 탈퇴하였다면 탈퇴보고 메시지를 다른 라우터에게 발송하고 그룹 삭제 • 그룹 삭제시 특별 질의 메시지를 보내 삭제해도 되는 지 확인 • 탈퇴보고 없이 호스트가 종료되면 멀티캐스트 그룹에 계속 남기 때문에 주기적으로 일반 질의 메시지를 보내 확인

  33. IGMP 지연 응답의 예

  34. 7.4.7 캡슐화

  35. 이더넷의 멀티캐스트용 물리주소 할당

  36. 멀티캐스트 IP 패킷의 터널링

  37. 7.4.8 IP 멀티캐스팅 활용 • 파일 전송 • 음성/화상 회의 • 멀티캐스팅 방송

More Related