SECTION 4.1
R1.
Let’s review some of the terminology used in this textbook. Recall that the name of a transport-layer packet is segment and that the name of a link-layer packet is frame. What is the name of a network-layer packet? Recall that both routers and link-layer switches are called packet switches. What is the fundamental difference between a router and link-layer switch?
1)网络层的分组被称为数据报。
2) 链路层交换机作用于链路层,基于Mac地址转发。路由器作用于网络层,基于IP地址转发。
附:各层分组对应的名字:
层 | 名字 |
---|---|
应用层 | 报文 message |
运输层 | 报文段 segment |
网络层 | 数据报 datagram |
链路层 | 帧 |
R2.
We noted that network layer functionality can be broadly divided into data plane functionality and control plane functionality. What are the main functions of the data plane? Of the control plane?
R3.
We made a distinction between the forwarding function and the routing function performed in the network layer. What are the key differences between routing and forwarding?
R4.
What is the role of the forwarding table within a router?
R5.
We said that a network layer’s service model “defines the characteristics of end-to-end transport of packets between sending and receiving hosts.” What is the service model of the Internet’s network layer? What guarantees are made by the Internet’s service model regarding the host-to-host delivery of datagrams?
SECTION 4.2
R6.
In Section 4.2 , we saw that a router typically consists of input ports, output ports, a switching fabric and a routing processor. Which of these are implemented in hardware and which are implemented in software? Why? Returning to the notion of the network layer’s data plane and control plane, which are implemented in hardware and which are implemented in software? Why?
R7.
Discuss why each input port in a high-speed router stores a shadow copy of the forwarding table.
R8.
What is meant by destination-based forwarding? How does this differ from generalized forwarding (assuming you’ve read Section 4.4 , which of the two approaches are adopted by Software-Defined Networking)?
R9.
Suppose that an arriving packet matches two or more entries in a router’s forwarding table. With traditional destination-based forwarding, what rule does a router apply to determine which of these rules should be applied to determine the output port to which the arriving packet should be switched?
R10.
Three types of switching fabrics are discussed in Section 4.2 . List and briefly describe each type. Which, if any, can send multiple packets across the fabric in parallel?
R11.
Describe how packet loss can occur at input ports. Describe how packet loss at input ports can be eliminated (without using infinite buffers).
R12.
Describe how packet loss can occur at output ports. Can this loss be prevented by increasing the switch fabric speed?
R13.
What is HOL blocking? Does it occur in input ports or output ports?
R14.
In Section 4.2 , we studied FIFO, Priority, Round Robin (RR), and Weighted Fair Queueing (WFQ) packet scheduling disciplines? Which of these queueing disciplines ensure that all packets depart in the order in which they arrived?
R15.
Give an example showing why a network operator might want one class of packets to be given priority over another class of packets.
R16.
What is an essential different between RR and WFQ packet scheduling? Is there a case (Hint: Consider the WFQ weights) where RR and WFQ will behave exactly the same?
R17.
Suppose Host A sends Host B a TCP segment encapsulated in an IP datagram. When Host B receives the datagram, how does the network layer in Host B know it should pass the segment (that is, the payload of the datagram) to TCP rather than to UDP or to some other upper-layer protocol?
在IP报文头部有单独字段来说明上层使用的协议。
R18.
What field in the IP header can be used to ensure that a packet is forwarded through no more than N routers?
R19.
Recall that we saw the Internet checksum being used in both transport-layer segment (in UDP and TCP headers, Figures 3.7 and 3.29 respectively) and in network-layer datagrams (IP header, Figure 4.16 ). Now consider a transport layer segment encapsulated in an IP datagram. Are the checksums in the segment header and datagram header computed over any common bytes in the IP datagram? Explain your answer.
R20.
When a large datagram is fragmented into multiple smaller datagrams, where are these smaller datagrams reassembled into a single larger datagram?
R21.
Do routers have IP addresses? If so, how many?
有的。路由器的每一个接口都有一个单独的IP地址
R22.
What is the 32-bit binary equivalent of the IP address 223.1.3.27?
R23.
Visit a host that uses DHCP to obtain its IP address, network mask, default router, and IP address of its local DNS server. List these values.
IP: 10.151.217.80
子网掩码:255.255.128.0 即/17
默认网关:10.151.254.254
DNS服务器地址: 10.10.10.10
R24.
Suppose there are three routers between a source host and a destination host. Ignoring fragmentation, an IP datagram sent from the source host to the destination host will travel over how many interfaces? How many forwarding tables will be indexed to move the datagram from the source to the destination?
R25.
Suppose an application generates chunks of 40 bytes of data every 20 msec, and each chunk gets encapsulated in a TCP segment and then an IP datagram. What percentage of each datagram will be overhead, and what percentage will be application data?
一般情况下,假设使用20字节的IP数据报头和20字节的TCP报文段头,开销50%,应用层数据50%.
但是IP数据报头和TCP报文段头均是可变的,实际未必是这样。
R26.
Suppose you purchase a wireless router and connect it to your cable modem. Also suppose that your ISP dynamically assigns your connected device (that is, your wireless router) one IP address. Also suppose that you have five PCs at home that use 802.11 to wirelessly connect to your wireless router. How are IP addresses assigned to the five PCs? Does the wireless router use NAT? Why or why not?
R27.
What is meant by the term “route aggregation”? Why is it useful for a router to perform route aggregation?
R28.
What is meant by a “plug-and-play” or “zeroconf” protocol?
R29.
What is a private network address? Should a datagram with a private network address ever be present in the larger public Internet? Explain.
R30.
Compare and contrast the IPv4 and the IPv6 header fields. Do they have any fields in common?
R31.
It has been said that when IPv6 tunnels through IPv4 routers, IPv6 treats the IPv4 tunnels as link-layer protocols. Do you agree with this statement? Why or why not?
R32.
How does generalized forwarding differ from destination-based forwarding?
R33.
What is the difference between a forwarding table that we encountered in destination-based forwarding in Section 4.1 and OpenFlow’s flow table that we encountered in Section 4.4?
R34.
What is meant by the “match plus action” operation of a router or switch? In the case of destination-based forwarding packet switch, what is matched and what is the action taken? In the case of an SDN, name three fields that can be matched, and three actions that can be taken.
R35.
Name three header fields in an IP datagram that can be “matched” in OpenFlow 1.0 generalized forwarding. What are three IP datagram header fields that cannot be “matched” in OpenFlow?