TCP/IP的工作原理

一.总述

1.定义:

计算机网络是一些互相连接的、自治的计算机的集合。因特网是网络的网络。

2.分类:

根据作用范围分类:

广域网 WAN (Wide Area Network)

局域网 LAN (Local Area Network)

城域网 MAN (Metropolitan Area Network)

个人区域网 PAN (Personal Area Network)

根据使用者分类:

公用网 (public network)

专用网 (private network)

3.计算机网络的性能指标

速率:

速率即数据率(data rate)或比特率(bit rate)是计算机网络中最重要的一个性能指标。速率的单位是 b/s,或kb/s, Mb/s, Gb/s 等。

带宽:

“带宽”(bandwidth)本来是指信号具有的频带宽度,单位是赫(或千赫、兆赫、吉赫等)。

现在“带宽”是数字信道所能传送的“最高数据率”的同义语,单位是“比特每秒”,或 b/s (bit/s)。

吞吐量:

吞吐量(throughput)表示在单位时间内通过某个网络(或信道、接口)的数据量。

吞吐量更经常地用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。吞吐量受网络的

带宽或网络的额定速率的限制。

时延:

时延主要包括:发送时延、传播时延、处理时延、排队时延等。

利用率:

信道利用率指出某信道有百分之几的时间是被利用的(有数据通过)。完全空闲的信道的利用率是零。网络利用率则是全

网络的信道利用率的加权平均值。信道利用率并非越高越好。

4.计算机网络的层次结构

相互通信的两个计算机系统必须高度协调工作才行,而这种“协调”是相当复杂的。

“分层”可将庞大而复杂的问题,转化为若干较小的局部问题,而这些较小的局部问题就比较易于研究和处理。

现在有两种国际标准,一种是OSI标准,是法律上的标准,但是没有被市场认可。一种是事实上的标准TCP/IP标准。

协议与层次划分:

计算机网络中的数据交换必须遵守事先约定好的规则。 这些规则明确规定了所交换的数据的格式以及有关的同步问题

(同步含有时序的意思)。网络协议(network protocol),简称为协议,是为进行网络中的数据交换而建立的规则、标准或约定。

网络协议的组成要素:

语法 数据与控制信息的结构或格式 。

语义 需要发出何种控制信息,完成何种动作以及做出何种响应。

同步 事件实现顺序的详细说明。

五层协议的体系结构:

应用层(application layer)

传输层(transport layer)

网络层(network layer)

数据链路层(data link layer)

物理层(physical layer)

实体、协议、服务和服务访问点:

实体(entity) 表示任何可发送或接收信息的硬件或软件进程。

协议是控制两个对等实体进行通信的规则的集合。在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。

要实现本层协议,还需要使用下层所提供的服务。

本层的服务用户只能看见服务而无法看见下面的协议。

下面的协议对上面的服务用户是透明的。

协议是“水平的”,即协议是控制对等实体之间通信的规则。

服务是“垂直的”,即服务是由下层向上层通过层间接口提供的。

同一系统相邻两层的实体进行交互的地方,称为服务访问点 SAP (Service Access Point)。

TCP/IP体系结构:

回到顶部

二.物理层

1.物理层的主要任务描述为确定与传输媒体的接口的一些特性

机械特性:指明接口所用接线器的形状和尺寸、引线数目和排列、固定和锁定装置等等。

电气特性:指明在接口电缆的各条线上出现的电压的范围。

功能特性:指明某条线上出现的某一电平的电压表示何种意义。

过程特性:指明对于不同功能的各种可能事件的出现顺序。

2.相关术语及概念:

数据(data)——运送消息的实体。

信号(signal)——数据的电气的或电磁的表现。

“模拟的”(analogous)——代表消息的参数的取值是连续的。

“数字的”(digital)——代表消息的参数的取值是离散的。

码元(code)——在使用时间域(或简称为时域)的波形表示数字信号时,代表不同离散数值的基本波形。

单向通信(单工通信)——只能有一个方向的通信而没有反方向的交互。

双向交替通信(半双工通信)——通信的双方都可以发送信息,但不能双方同时发送(当然也就不能同时接收)。

双向同时通信(全双工通信)——通信的双方可以同时发送和接收信息。

信噪比:

香农(Shannon)用信息论的理论推导出了带宽受限且有高斯白噪声干扰的信道的极限、无差错的信息传输速率。

信道的极限信息传输速率 C 可表达为

C = W log2(1+S/N) b/s

W 为信道的带宽(以 Hz 为单位);

S 为信道内所传信号的平均功率;

N 为信道内部的高斯噪声功率。

信道的带宽或信道中的信噪比越大,则信息的极限传输速率就越高。

只要信息传输速率低于信道的极限信息传输速率,就一定可以找到某种办法来实现无差错的传输。

若信道带宽 W 或信噪比 S/N 没有上限(当然实际信道不可能是这样的),则信道的极限信息传输速率 C 也就没有上限。

实际信道上能够达到的信息传输速率要比香农的极限传输速率低不少。

3.信道复用技术

信道复用技术有频分复用、时分复用、统计时分复用、码分复用、波分复用。

频分复用:用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频分复用的所有用户在同样的时间占

用不同的带宽资源(请注意,这里的“带宽”是频率带宽而不是数据的发送速率)。

时分复用:时分复用则是将时间划分为一段段等长的时分复用帧(TDM 帧)。每一个时分复用的用户在每一个 TDM 帧

中占用固定序号的时隙。每一个用户所占用的时隙是周期性地出现(其周期就是 TDM 帧的长度)。TDM 信号也称为等

时(isochronous)信号。时分复用的所有用户是在不同的时间占用同样的频带宽度。

波分复用:波分复用就是光的频分复用。

码分复用:常用的名词是码分多址 CDMA (Code Division Multiple Access)。各用户使用经过特殊挑选的不同码型,因此彼

此不会造成干扰。这种系统发送的信号有很强的抗干扰能力,其频谱类似于白噪声,不易被敌人发现。 每一个比特时间划

分为 m 个短的间隔,称为码片(chip)。

4.ADSL技术

ADSL 技术就是用数字技术对现有的模拟电话用户线进行改造,使它能够承载宽带业务。

标准模拟电话信号的频带被限制在 300~3400 Hz 的范围内,但用户线本身实际可通过的信号频率仍然超过 1 MHz。

ADSL 技术就把 0~4 kHz 低端频谱留给传统电话使用,而把原来没有被利用的高端频谱留给用户上网使用。

DSL 就是数字用户线(Digital Subscriber Line)的缩写。

三.数据链路层

1.数据链路层使用的信道主要有以下两种类型:

点对点信道:这种信道使用一对一的点对点通信方式。

广播信道:这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用

的共享信道协议来协调这些主机的数据发送。

2.数据链路层的简单模型

3.数据链路和帧

链路(link)是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。一条链路只是一条通路的一个组成部分。

数据链路(data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链

路上,就构成了数据链路。现在最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。一般的适配器都包

括了数据链路层和物理层这两层的功能。

4.数据链路层的三个基本问题

(1) 封装成帧

封装成帧(framing)就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。确定帧的界限。首部和尾部的一个

重要作用就是进行帧定界。

(2) 透明传输

透明传输问题是在一个数据帧中数据部分出现了和首部和尾部相同的数据。导致不能准确的进行帧定界。

解决办法:发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(其十六进制

编码是 1B)。

字节填充(byte stuffing)或字符填充(character stuffing)——接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。

如果转义字符也出现数据当中,那么应在转义字符前面插入一个转义字符。当接收端收到连续的两个转义字符时,就删除其

中前面的一个。

(3) 差错控制

在传输过程中可能会产生比特差错:1 可能会变成 0 而 0 也可能变成 1。在一段时间内,传输错误的比特占所传输比特总数

的比率称为误码率 BER (Bit Error Rate)。误码率与信噪比有很大的关系。

为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施。在数据链路层传送的帧中,广泛使用

了循环冗余检验 CRC 的检错技术。

5.点对点协议PPP

现在全世界使用得最多的数据链路层协议是点对点协议 PPP (Point-to-Point Protocol)。用户使用拨号电话线接入因特网时,一

般都是使用 PPP 协议。

PPP协议满足的需求:

简单——这是首要的要求

封装成帧

透明性

多种网络层协议

多种类型链路

差错检测

检测连接状态

最大传送单元

网络层地址协商

数据压缩协商

PPP协议不需要的功能:

纠错

流量控制

序号

多点线路

半双工或单工链路

PPP协议的三个组成部分:

一个将 IP 数据报封装到串行链路的方法。

链路控制协议 LCP (Link Control Protocol)。

网络控制协议 NCP (Network Control Protocol)。

PPP协议的帧格式:

PPP 是面向字节的,所有的 PPP 帧的长度都是整数字节。

PPP协议的透明传输问题:

当 PPP 用在同步传输链路时,协议规定采用硬件来完成比特填充(和 HDLC 的做法一样)。

当 PPP 用在异步传输时,就使用一种特殊的字符填充法。

字符填充:

将信息字段中出现的每一个 0x7E 字节转变成为 2 字节序列(0x7D, 0x5E)。 若信息字段中出现一个 0x7D 的字节, 则将其

转变成为 2 字节序列(0x7D, 0x5D)。若信息字段中出现 ASCII 码的控制字符(即数值小于 0x20 的字符),则在该字符前

面要加入一个 0x7D 字节,同时将该字符的编码加以改变。

比特填充:

PPP 协议用在 SONET/SDH 链路时,是使用同步传输(一连串的比特连续传送)。这时 PPP 协议采用零比特填充方法来

实现透明传输。

在发送端,只要发现有 5 个连续 1,则立即填入一个 0。接收端对帧中的比特流进行扫描。每当发现 5 个连续1时,就把这

5 个连续 1 后的一个 0 删除。

PPP协议不提供序号和确认的可靠传输。原因:

在数据链路层出现差错的概率不大时,使用比较简单的 PPP 协议较为合理。在因特网环境下,PPP 的信息字段放入的数据

是 IP 数据报。数据链路层的可靠传输并不能够保证网络层的传输也是可靠的。帧检验序列 FCS 字段可保证无差错接受。

PPP协议的工作状态:

当用户拨号接入 ISP 时,路由器的调制解调器对拨号做出确认,并建立一条物理连接。PC 机向路由器发送一系列的 LCP 分

组(封装成多个 PPP 帧)。这些分组及其响应选择一些 PPP 参数,和进行网络层配置,NCP 给新接入的 PC机分配一个临

时的 IP 地址,使 PC 机成为因特网上的一个主机。通信完毕时,NCP 释放网络层连接,收回原来分配出去的 IP 地址。接

着,LCP 释放数据链路层连接。最后释放的是物理层的连接。

6.局域网

局域网最主要的特点是:网络为一个单位所拥有,且地理范围和站点数目均有限。局域网具有如下的一些主要优点:具有广

播功能,从一个站点可很方便地访问全网。局域网上的主机可共享连接在局域网上的各种硬件和软件资源。 便于系统的扩展

和逐渐地演变,各设备的位置可灵活调整和改变。提高了系统的可靠性、可用性和残存性。

局域网拓扑:

7.CSMA/CD协议

以太网的两种通信简便的措施:

采用较为灵活的无连接的工作方式,即不必先建立连接就可以直接发送数据。 以太网对发送的数据帧不进行编号,也不

要求对方发回确认。这样做的理由是局域网信道的质量很好,因信道质量产生差错的概率是很小的。

以太网提供的服务:

以太网提供的服务是不可靠的交付,即尽最大努力的交付。当目的站收到有差错的数据帧时就丢弃此帧,其他什么也不做。

差错的纠正由高层来决定。如果高层发现丢失了一些数据而进行重传,但以太网并不知道这是一个重传的帧,而是当作一个

新的数据帧来发送。

CSMA/CD(载波监听多点接入/碰撞检测)

“多点接入”表示许多计算机以多点接入的方式连接在一根总线上。

“载波监听”是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,

以免发生碰撞。

总线上并没有什么“载波”。因此, “载波监听”就是用电子技术检测总线上有没有其他计算机发送的数据信号。

“碰撞检测”就是计算机边发送数据边检测信道上的信号电压大小。

当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。

当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞。

所谓“碰撞”就是发生了冲突。因此“碰撞检测”也称为“冲突检测”。

使用 CSMA/CD 协议的以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)。每个站在发送数据之后的一小段

时间内,存在着遭遇碰撞的可能性。 这种发送的不确定性使整个以太网的平均通信量远小于以太网的最高数据率。

争用期:

最先发送数据帧的站,在发送数据帧后至多经过时间 2t(两倍的端到端往返时延)就可知道发送的数据帧是否遭受了碰撞。

以太网的端到端往返时延 2t称为争用期,或碰撞窗口。经过争用期这段时间还没有检测到碰撞,才能肯定

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值