hyndb

[컴퓨터네트워크] 19장 연습문제 본문

컴퓨터네트워크/연습문제

[컴퓨터네트워크] 19장 연습문제

ttttki913 2024. 5. 31. 01:47

Q19-1. Can the value of the header length field in an IPv4 packet be less than 5? When is it exactly 5? (IPv4 패킷의 헤더 길이 필드 값이 5보다 작을 수 있는가? 정확히 5는 언제인가?)

A: IPv4 헤더의 최소 길이는 20바이트이고 최대 길이는 60바이트입니다. 헤더 길이 필드의 값은 헤더 길이를 4바이트의 multiples로 정의하며, 이는 HLEN 5에서 15 사이일 수 있음을 의미합니다. 5보다 작을 수 없고 15보다 클 수 없습니다. 옵션이 없을 때 정확히 5입니다.

 

Q19-2. A host is sending 100 datagrams to another host. If the identification number of the first datagram is 1024, what is the identification number of the last? (호스트가 100개의 데이터그램을 다른 호스트로 보내고 있다. 첫 번째 데이터그램의 식별 번호가 1024인 경우 마지막 데이터그램의 식별 번호는 무엇인가?)

A: 호스트가 100개의 데이터그램을 보내고 있으므로 각 데이터 그램은 고유한 식별 번호를 가진다. 첫 번째 데이터그램의 식별 번호가 1024인 경우, 두 번째 데이터 그램은 1025, 세 번째는 1026… 처럼 순차적으로 증가한다. 따라서 마지막 데이터그램의 식별 번호는 1024 + 99 = 1123이 된다.

 

Q19-3. An IP fragment has arrived with an offset value of 100. How many bytes of data were originally sent by the source before the data in this fragment? (오프셋 값이 100 IP 프래그먼트가 도착했다. 이 조각의 데이터보다 먼저 원본에서 보낸 데이터의 바이트는 몇 바이트인가?)

A: 단편화 오프셋 필드는 원래 데이터그램의 시작 부분부터 오프셋을 8바이트의 배수로 표시하므로 오프셋 100은 이 조각의 첫 번째 바이트가 800으로 번호가 매겨 졌음을 나타내며, 이는 0에서 799( 800바이트)까지 번호가 매겨진 바이트가 이전에 전송되었음을 의미합니다.

 

Q19-4. Mention the three auxiliary protocols at the network layer of the TCP/IP suite that are designed to help the IPv4 protocol. (IPv4 프로토콜을 지원하도록 설계된 TCP/IP 제품군 네트워크 계층에 있는 세 가지 보조 프로토콜을 언급하시오.)

A: ICMPv4(to handle some errors that may occur in delivery), IGMP(to help IPv4 in multicasting) ARP(used in address mapping)

 

Q19-5. In an IPv4 datagram, the value of the header-length (HLEN) field is (6)16. How many bytes of options have been added to the packet? (IPv4 데이터그램에서 헤더 길이(HLEN) 필드의 값은 (6)16이다. 패킷에 몇 바이트의 옵션이 추가되었는가?)

A: 헤더 길이는 6 × 4 = 24입니다. 옵션 길이는 24 20 = 4바이트입니다.

 

Q19-6. Can each of the following be the value of the TTL in a datagram? Explain your answer.

 a. 23 b. 0 c. 1 d. 301 (다음 각각이 데이터그램의 TTL 값이 될 수 있는가? 설명하시오)

A: a. TTL 1~255사이의 값을 가질 수 있으므로 23 TTL 값이 될 수 있다.

b. TTL 1~255사이의 값을 가질 수 있으므로 0 TTL 값이 될 수 없다.

c. TTL 1~255사이의 값을 가질 수 있으므로 1 TTL 값이 될 수 있다.

d. TTL 1~255사이의 값을 가질 수 있으므로 301 TTL 값이 될 수 없다.

 

Q19-7. Compare and contrast the protocol field at the network layer with the port numbers at the transport layer. What is their common purpose? Why do we need two port-number fields but only one protocol field? Why is the size of the protocol field only half the size of each port number? (네트워크 계층의 프로토콜 필드를 전송 계층의 포트 번호와 비교하고 대조한다. 그들의 공통된 목적은 무엇인가? 두 개의 포트 번호 필드가 필요하지만 하나의 프로토콜 필드만 필요한 이유는 무엇인가? 프로토콜 필드의 크기가 각 포트 번호의 절반에 불과한 이유는 무엇인가?)

A: 프로토콜 필드와 포트 번호는 모두 멀티플렉싱과 디멀티플렉싱이라는 동일한 기능을 가지고 있습니다. 포트 번호는 전송 계층에서 이러한 작업을 수행하는 데 사용됩니다. 프로토콜 필드는 네트워크 계층에서 동일한 작업을 수행하는 데 사용됩니다. 소스의 프로토콜에서 가져온 페이로드가 대상의 동일한 프로토콜로 전달되어야 하기 때문에 네트워크 계층에 하나의 프로토콜 필드만 필요합니다. 반면에 클라이언트 및 서버 프로세스는 일반적으로 서로 다른 포트 번호(임시 및 잘 알려짐)를 가지므로 프로세스를 정의하려면 두 개의 포트 번호가 필요합니다. 프로토콜 필드의 크기는 네트워크 작업 계층의 서비스를 사용하는 서로 다른 프로토콜의 총 수를 정의하며, 이는 작은 수입니다(이 목적에는 8비트면 충분함). 반면에, 더 큰 크기의 포트 번호 필드(16비트가 할당됨)가 필요한 많은 새 응용 프로그램이 매일 추가될 수 있습니다.

 

Q19-8. Which field(s) in the datagram is(are) responsible for gluing together all fragments belonging to an original datagram? (데이터그램의 어떤 필드가 원본 데이터그램에 속하는 모든 파편을 함께 붙이는 역할을 하는가?)

A: identification field는 소스 호스트에서 시작된 데이터 그램을 식별한다. 또한 데이터그램이 조각화되면 식별 필드의 값이 모든 조각에 복사된다. 이를 통해 원본 데이터 그램에 속하는 모든 파편을 함께 붙인다.

 

Q19-9. Can each of the following be the value of the offset field in a datagram? Explain your answer. (다음 각각이 데이터그램의 오프셋 필드 값이 될 수 있는가? 설명하시오.)

a. 8 b. 31 c. 73 d. 56

A: 각 데이터그램에는 동일한 원본에서 보낸 다른 데이터그램과 구별되는 고유한 식별 번호가 있어야 합니다. 식별 번호는 모든 조각에 복사됩니다. , 식별 번호는 동일한 데이터그램에 속하는 모든 조각을 함께 붙입니다.

Q19-10. Assume a destination computer receives several packets from a source. How can it be sure that the fragments belonging to a datagram are not mixed with the fragments belonging to another datagram? (목적지컴퓨터가 원본에서 여러 패킷을 수신한다고 가정한다. 데이터그램에 속하는 조각이 다른 데이터그램에 속하는 조각과 혼합되지 않는다는 것을 어떻게 확신할 수 있는가?)

A: 목적지 컴퓨터는 identification 필드를 통해 동일한 데이터그램에서 온 조각인 지 판별할 수 있고, source IP 주소와 destination IP 주소를 기반으로 구분한다. 또한 protocol 필드를 통해 데이터 그램의 상위 계층 프로토콜을 구분한다. 이 세 가지 필드를 통해 목적지 컴퓨터의 각 조각이 어느 데이터그램에 속하는지 정확히 구분할 수 있다.

 

Q19-11. Explain why the Internet does not create a report message to report the error in an IP datagram that carries an ICMPv4 message. (인터넷이 ICMPv4 메시지를 전달하는 IP 데이터그램의 오류를 보고하기 위해 보고서 메시지를 작성하지 않는 이유를 설명하시오.)

A: 그렇게 되면 우리는 악순환의 고리에 빠질 수 있습니다. 첫 번째 데이터그램에 오류가 있습니다. 두 번째 데이터그램은 첫 번째 데이터그램에서 오류를 보고합니다. 두 번째 데이터그램에도 오류가 있는 경우 세 번째 데이터그램은 두 번째 데이터그램에 대한 오류 정보를 전달합니다.

 

Q19-12. What are the source and destination IP addresses in a datagram that carries the ICMPv4 message reported by a router? (라우터에 의해 보고되는 ICMPv4 메시지를 전달하는 데이터그램의 소스 및 목적지 IP 주소는 무엇인가?)

A: source IP address: 오류를 보고하는 라우터의 IP 주소이다.

destination IP address: 오류가 발생한 원본 IP 데이터그램의 source IP address이다. 이는 오류를 발생시킨 원본 호스트에게 문제를 알리기 위함이다.

 

Q19-13. Explain why the registration request and reply are not directly encapsulated in an IP datagram. Why is there a need for the UDP user datagram? (등록 요청 및 회신이 IP 데이터그램에 직접 캡슐화되지 않는 이유를 설명하시오. UDP 사용자 데이터그램이 필요한 이유는 무엇인가?)

A: 이 두 메시지에는 ICMP 프로토콜에서 지원하지 않는 새 필드와 정보가 필요합니다. 요청을 보내고 응답을 받으려면 새 응용 프로그램 계층 클라이언트 및 서버가 필요합니다. 모바일 IP의 설계자는 네트워크 계층 대신 애플리케이션 계층에서 구현하기로 결정했으며, 이를 위해서는 이 계층을 변경해야 합니다. TCP 대신 UDP를 트랜스 포트 계층으로 선택한 이유는 오버헤드가 낮고 교환되는 메시지의 경계가 명확하고 크기가 고정되어 있기 때문입니다.

 

Q19-14. Is registration required if the mobile host acts as a foreign agent? Explain your answer. (모바일 호스트가 foreign 대리인 역할을 하는 경우 등록이 필요한가? 설명하시오.)

A: 등록이 필요하지 않다. foreign 대리인은 모바일 호스트의 등록 요청을 받고, 이를 home agent에 전달한다. 따라서 모바일 호스트가 foreign 대리인 역할을 하는 경우 등록 절차를 따로 거치지 않아도 된다.

 

Q19-15. Discuss how the ICMPv4 router solicitation message can also be used for agent solicitation. Why are there no extra fields? (ICMPv4 라우터 요청 메시지를 에이전트 요청에도 사용할 수 있는 방법에 대해 논의한다. 추가 필드가 없는 이유는 무엇인가?)

A: ICMP 요청 메시지에는 에이전트 요청으로 사용되는 데 필요한 모든 필드가 있습니다. 추가 필드가 필요하지 않습니다.

 

Q19-16. Which protocol is the carrier of the agent advertisement and solicitation messages? (에이전트 광고 및 권유 메시지의 전달자는 어떤 프로토콜인가?)

A: ICMP 프로토콜