计算机网络笔记
参考书籍:计算机网络——自顶向下方法(原书第 8 版)
第 1 章 计算机网络和因特网
端系统(end system)通过通信链路(communication link)和分组交换机(packet switch)的网络连接到一起。
端系统通过因特网服务提供商(Internet Service Provider,ISP)接入因特网。每一个 ISP 网络都是独立管理的。
- TCP(Transmission Control Protocol,传输控制协议)
- IP(Internet Protoc,网络协议)
分布式应用(distributed application):涉及多个相互交换数据的端系统。
与因特网相连的端系统提供了一个套接字接口(socket interface),因特网套接字接口是一套发送程序必须遵循的规则集合。
为了完成一项工作,要求两个(或多个)通信实体运行相同的协议。
// TODO:附图计算机网络协议 P5
向一个 Web 服务器发出请求(即在 Web 浏览器中键入一个 Web 网页的 URL)所发生的情况:
首先,计算机向该 Web 服务器发送一条连接请求报文,并等待回答。该 Web 服务器最终能接收到连接请求报文,并返回一条连接响应报文。得知请求该 Web 文档正常后,计算机则在一条 GET 报文中发送该网页的名字,而该网页的名字要从这台 Web 服务器上取回。最后,Web 服务器向你的计算机返回该 Web 网页(文件)。
协议(protocol)定义了在两个或多个通信实体之间交换的报文的格式和顺序,以及报文的发送/接收或其他事件所采取的操作。
WiFi:基于 IEEE 802.11 技术的无线 LAN(局域网)接入
为了从源端系统向目的端系统发送一个报文(message),源将长报文划分为较小的数据块,称为分组(packet)。在源和目的地之间,每个分组都通过通信链路(communication link)和分组交换机(packet switch)传送,交换机主要有路由器(router)和链路层交换机(link-layer switch)两类。
存储转发传输(store-and-forward transmission):交换机在开始向输出链路传输该分组的第一个比特之前,必须接受到整个分组。
分组交换机具有一个输出缓存【output buffer,也称为输出队列(output queue)】,缓存充满时将出现分组丢失(丢包)(packet loss),到达的分组或已经排队的分组之一将被丢弃。
转发表(forwarding table)用于将目的地址(或目的地址的一部分)映射为输出链路。
通过网络链路和交换机移动数据有两种基本方法:电路交换(circuit switching)和分组交换(packet switching)。
在电路交换网络中,在端系统间通信会话期间,预留了端系统间沿路径通信所需要的资源(缓存,链路传输速率)。在分组交换网络中,这些数据不是预留的。
因特网尽最大努力以及时方式交付分组,但它不做任何保证。
电路交换网络中的复用
- 频分复用(Frequency-Division Multiplexing, FDM):链路的频谱由跨越链路创建的所有连接共享。特别是,在连接期间为每条连接专设一个频段。该频段的宽度称为带宽(band-width)。
- 时分复用(Time-Division Multiplexing, TDM):时间被划分为固定的帧,而且每个帧又被划分为固定数量的时隙。当网络跨越链路创建一条连接时,网络在每个帧中为该连接指定一个时隙。
电路交换不够经济:静默期 (silent period)专用电路是空闲的。
端到端电路传输时间与链路数量无关。
对比:
- 分组交换不适合实时服务
- 比电路交换更好的带宽共享,更简单有效,实现成本更低
// TODO:ISP 互联图
位于相同等级结构层次的临近的一对 ISP 能够对等(peer),当两个 ISP 对等时,为减少费用通常不进行结算,即任何一个 ISP 都不对其对等付费。
因特网交换点(Internet Exchange Point,IXP)是一个汇合点,多个 ISP 能够在这里一起对等。
谷歌专用网络通过与较低层 ISP 对等(无结算),尝试“绕过”互联网的较高层。通过创建自己的网络,内容提供商不仅减少了向顶层 ISP 支付的费用,而且对其服务最终如何交付给端用户有了更多的控制。
节点总时延(total nodal delay):
- 节点处理时延(nodal processing delay)
- 排队时延(queuing delay)
- 传输时延(transmission delay)
- 传播时延(propagation delay)
传输时延事路由器推出分组所需要的时间,它是分组长度和链路传输速率的函数,而与两台路由器之间的距离无关。而传播时延是一个比特从一台路由器传播到另一台路由器所需要的时间,它是两台路由器之间的距离的函数,与分组长度或链路传输速率无关。
排队时延很大程度取决于流量到达队列的速率、链路的传输速率和到达流量的性质,即流量是周期性到达还是以突发形式到达。
a - 分组到达队列的平均速率(分组/秒,pkt/s)
R - 传输速率,即从队列中推出比特的速率(bps)
假设所有分组由 L bit 组成,则比特到达队列的平均速率是La bps
,流量强度(traffic intensity)为La/R
sh