前言:
1.计算机网络是通过传输介质、通信设施和网络通信协议,把分散在不同地点的计算机设备互联起来,实现资源共享和信息传输的系统。
2.涉及到的知识点:1)传输介质;2)通信协议;3)不同地点.;4)计算机设备;5)资源共享;6)数据传输;7)系统。
3.计算机网络提供的基本功能:
4.计算机网络协议体系的特征
计算机网络中计算机进行通信、数据交换时需要制定算双方都要遵守的通信规则和约定就是协议。协议是按层次节后世界的,协议层次的集合构成了协议体系结构。网络协议层次结构包含两个基本内容:
对计算机网络中的服务采用服务原语来描述。
服务原语由3部分组成:原语名、原语类型和原语参数
服务原语的格式: 原语名.原语类型(原语参数)
原语的类型有4种:
层次 | 功能 | 对应的协议数据单元 |
---|---|---|
应用层 | 包含了用户通常需要的各种各样的协议 | A-报文 |
表示层 | 关注传递信息的语法和语义 | P-报文 |
会话层 | 允许不同机器上的用户建立会话,通常提供各种服务 | S-报文 |
运输层 | 接收来自上一层的数据 | T-报文 |
网络层 | 控制子网的运行 | 分组 |
数据链路层 | 将一个原始的传输设施转变成没有漏检传输错误的线路 | 帧 |
物理层 | 传输原始位流 | 位流(bits) |
| centered 文本居中 | right-aligned 文本居右 |
1.长度为100字节的用用层数据交给运输层传送,需加上20自己的TCP首部。再交给网络层传送,需加上20字节的IP首部。最后交给数据链路层的以太网传输,假设以太网的数据部分为1500字节,加上帧首部18字节。求数据的传输效率
答:总共需要传输的应用层数据为100字节,传输过程中以太网帧的数据部分为 100+20+20=140字节,因为140字节小于1500字节的以太网帧的数据部分字长。故用一帧传输即可不用分片,所以,数据传输率为
100/(100+20+20+18)
通信双方完成一次通信需要满足三个要求:
曼切斯特编码信号:每一周期中间的跳变不仅用作始终同步,而且用来标志0或1.可以规定:由高到低标志1,由低到高标志0.
差分曼切斯特编码信号:每位的前沿电平与前一位的后沿电平相比较,有跳变标志0,无跳变标志1。空心箭头表示有跳变,表示0。
电路交换是面向连接的,通信双方在通信之前先建立起一条连接,然后再连接的基础上传输数据,数据传输玩后释放连接。
报文交换与网络节点的存储、转发相连接。
优点:
缺点:
分组交换也与存储、转发相联系,把需要传输的数据(报文)分成长度固定的分组,分组独立地在每个节点进行存储和转发
优点:
试在下列条件下比较电路交换和分组交换。要传送的报文共x(bit)。从源点到终点共经过k段链路,每段链路的传播时延为d(s),数据率为b(b/s)。在电路交换时电路的建立时间为s(s)。在分组交换时分组长度为p(bit),且各结点的排队等待时间可忽略不计。问在怎样的条件下,分组交换的时延比电路交换的要小?(提示:画一下草图观察k段链路共有几个结点。)
答:
电路交换时延:kd+x/b+s,
分组交换时延:kd+(x/p)(p/b)+ (k-1)(p/b)。
其中(k-1)(p/b)表示K段传输中,有(k-1)次的储存转发延迟,当s>(k-1)(p/b)时,电路交换的时延比分组交换的时延大,当x>>p,相反。
若发送的数据为1010001,采用CRC生成多项式为G(X)=x4+x2+x+1,请求出校验位,并写出发送序列位。
易得生成多项式为1101,r=4d生成多项式的最高次为4),则用1010001除以10111,这里的除只进行本位的异或操作,不考虑进位或者借位。
如图所示,得到校验位1101,将校验位与信息位拼接得到发送序列位10100011101
答:(1)发送时延ts=107bit / 100kb/s = 100s
传播时延tp=1000km / 2×108m/s = 0.005s
(2)发送时延ts=103bit / 1Gb/s = 10-6s
传播时延tp=1000km / 2×108m/s = 0.005s
应用层定义了运行在不同端系统上的应用程序进程相互传递报文的方式。
DNS的功能:将主机名、电子邮件目标地址、网址映射成IP地址。
DNS记录的格式:Name.Value.Type.TTL
Name:一般为节点主机的域名,或是域的名字;
Value:是与Name对应得值,如对应的IP地址;
Type:指出记录的类型,表示这个记录是对应一个主机的IP地址或是一个名字服务器;
TTL:指出该记录的生存时间,一般为一天,按秒计算为86400s。
url的格式:<协议>://<主机>:<端口>/<路径>
1.连接建立的三次握手机制
第一次握手:建立连接时,客户端发送SYN包(seq=x)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号(Synchronize Sequence Numbers)。
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(seq=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。
2.连接释放的四次握手机制
3.为什么建立连接只用三次握手,释放连接需要四次握手。
因为建立连接时,server主机收到client主机的SYN连接请求报文后,可以直接发送SYN+ACK报文。但是释放连接时,server主机收到FIN报文时,可能并不会直接断开连接,而是需要等待双方的数据传输完毕,所以只能先回复一个ACK报文,告诉client端已经收到FIN报文。过一段时间后,server端在发送FIN报文。
停-等(stop-wait)协议的基本思想是:
在发送方每发送完一个协议数据单元后,就停止发送
-等待接收方的确认信息,并把所发送过的数据的副本保留下来
若发送方从接收方收到的确认信息的肯定的
-例如ACK,则发送方按顺序接着发送下一个协议数据单元
若收到的反馈信息是否定的,例如NAK
-则发送方就重新发送上次发送过的协议数据单元
停-等协议的两个窗口的值均为1
回退N协议需要满足Wr+Wt <=2K,若不能满足,则滑动窗口协议不能成立
对选择重传协议,接收窗口的值应满足Wr<=2K/2,若大于此值,没有什么用处
协议 | 特点 |
---|---|
用户数据报协议UDP | 无连接,不可靠,适用于小文件 |
传输控制协议TCP | 面向连接,可靠 ,适用于大文件 |
校验和计算
校验和字段即是UDP首部的最后2字节部分
答:
1)发送时延=1000b/50kbps=20ms
传播时延=500ms
则,t=发送时延+传播时延=520ms
2)若采用停等协议,停等协议的线路利用率计算公式:传输时延tf,重传时间tout,利用率U=tf/(tf+tout)
线路利用率是:(500/2)/520=48%
3)往返时延=500ms
传播时延=20ms
则,若使用选择连续ARQ,发送方在收到一个帧的应答前最多能发送500/20=25个
最短路径算法的步骤:
如下图所示,我们要求从节点A开始到其他所有节点的最低费用路径。
首先从A开始,找到距离A最短的是节点D,
上面的一行表示节点E要经过的节点,侧边栏表示目的节点。
例如DE(A,B) = 节点E经过节点B到达节点A的最小路径= 节点E直接与B相连的距离 + 节点B到达节点A的最短距离 = 8 + (1+2+2+1) = 14
最后根据圈出每一行的最小路径,得出路由表
目的路径 | 下一跳地址 |
---|---|
A | A |
B | D |
C | D |
D | D |
注意:子网划分时,子网号不能为全0或者全1(防止二义性)
目的网络 | 距离 | 下一跳地址 |
---|---|---|
N1 | 7 | A |
N2 | 2 | C |
N6 | 8 | F |
N8 | 4 | E |
N9 | 4 | F |
N1 | 7 | A |
现在B收到从C发来的路由信息
目的网络 | 距离 |
---|---|
N2 | 4 |
N3 | 8 |
N6 | 4 |
N8 | 3 |
N9 | 5 |
试求出路由器B更新后的路由表(详细说明每一个步骤)
更新后距离要+1(作者也不知道为什么)
目的网络 | 距离 | 下一跳地址 | 步骤 |
---|---|---|---|
N1 | 7 | A | 没有新信息,不改变 |
N2 | 5 | C | 相同的下一跳,更新, |
N3 | 9 | C | 新项目加入路由表 |
N6 | 5 | C | 下一跳不同,选择距离更短的 |
N8 | 4 | E | 下一跳不同,距离相同不更新 |
N9 | 4 | F | 下一跳不同,距离更大不更新 |
目的网络 | 子网掩码 | 下一跳路由器 |
---|---|---|
128.93.39.0 | 255.255.255.128 | 接口0 |
128.96.39.128 | 255.255.255.128 | 接口1 |
128.96.40.0 | 255.255.255.128 | R2 |
128.4.153.0 | 255.255.255.192 | R3 |
*(默认) | - | R4 |
现共收到5个分组。其目的站IP地址分别为:
(1)128.96.39.10
(2)128.96.40.12
(3)128.96.40.151
(4)192.4.153.17
(5)192.4.153.90
答:本题考查的是子网划分的知识
接口0的子网掩码是255.255.255.128,说明它用于标志主机的二进制位数是7位,所以可得
目的网络 | 子网掩码 | 下一跳路由器 | 子网范围 |
---|---|---|---|
128.93.39.0 | 255.255.255.128 | 接口0 | 128.96.39.0 - 128.96.39.127 |
128.96.39.128 | 255.255.255.128 | 接口1 | 128.96.39.128 - 128.96.39.255 |
128.96.40.0 | 255.255.255.128 | R2 | 128.96.40.0 - 128.96.40.127 |
128.4.153.0 | 255.255.255.192 | R3 | 128.4.153.0 128.4.153.63 |
*(默认) | - | R4 |
下一跳分别为接口:0、R2、R4、R3、R4
HDLC采用面向位的协议,使用位填充实现数据的透明传输
例题:
有一二进制位串0110111111111100用HDLC协议传送。经过位填充后变成怎样的位串?
011011111011111000
若接收端收到的HDLC帧的数据部分时0001110111110110,问删除发送端加入的’0’位后变成怎样的位串?
00011101111111111110