基础概念

路由器

负责连接两条或以上传输线路的计算机。同时路由器也是一个网关,它在网络层交换数据包。

交换机

网络中每台计算机通过一条点对点的链路连接到交换机(switch)。交换机有多个端口(port),每个端口连接一台计算机。交换机的工作是中继网络中的数据包,通过数据包中的地址确定数据发送给哪台计算机。

网关

将两个不同的网络连接起来并提供必要转换的机器,其硬件和软件的总称叫网关(gateway),网关可以工作在协议的不同层次。

子网

定义一

广域网中运行应用程序的计算机被称为主机(host),而连接这些主机的网络的其余部分被称为通信子网(communication subnet)/子网(subnet)。子网的工作是把信息从一台主机传递给另一台主机。

在多数广域网中,子网由传输线路和交换元素组成。传输线路(transmission line)指有线或无线链路,交换元素(switching element)/交换机(switch)是负责连接两条或以上传输线路的计算机,他们现在又叫路由器(router)

层次相关

OSI模型

OSI(Open Systems Interconnection,开放系统互联)模型描述了较为通用的网络模型,它本身不定义服务或协议。

物理层(physical layer)

物理层关注在一条通信信道上传输原始比特,涉及传输方式和细节,以及物理传输介质等。

数据链路层(data link layer)

数据链路层的主要任务是隐藏物理传输中的错误,使物理连接变成逻辑上无差错的数据链路。发送方将数据拆分成数据帧(data frame)并顺序发送,如果服务是可靠的,接受方给发送方发回确认帧(acknowledgement frame),帧的尾部带有检查码。

网络层(network layer)

网络层的主要功能是控制子网的运行。网络层负责路由,处理拥塞,决定服务质量,允许不同协议的异构网络相互连接成为互联网络。

传输层(transport layer)

传输层接受上一层的数据,在必要的时候把这些数据分割成较小的单元,然后把这些数据单元传递给网络层,并且确保数据正确抵达另一端。OSI的1~3层是链式连接的,而4~7层是端到端的。

会话层(session layer)与表示层(presentation layer)

会话层提供了对话控制、令牌管理、同步功能等服务,表示层管理数据的语义、抽象结构。由于现在的应用层实现了部分会话层与表示层的功能,在TCP/IP协议中不存在这两层。

应用层(application layer)

应用层包含了用户通常需要的各种协议,如HTTP(HyperText Transfer Protocol)、HTTPS、FTP、SFTP等协议。

层次设计问题

路由(routing)

在源和目的地之间找到合适的路径。网络有时有一些链路或者路由器偶尔发生故障,网络应该能够选出别的线路,这个主题叫做路由。

寻址(addressing)和命名(naming)

每一层在特定的消息中都需要一种机制来标识发送方和接收方,这种机制在下层叫寻址,上层叫命名。

拥塞(congestion)

由于太多的计算机发送太多的流量,网络没有能力传递所有的数据包。此时需要流量控制,发生拥塞时,每台计算机都减少对网络的宽带需求,这种策略对每一层都适用。

服务质量(Quality of Service)

网络为需要实时(real-time)传递的应用程序与高吞吐量的应用程序提供服务,QoS是调和这些竞争需求的机制的名称。