计算机网络知识点
一、无连接服务与面向连接服务
(1)面向连接服务:
1、当程序使用面向连接服务时,在客户机程序和服务器程序发送具有实际数据的分组前,要彼此发送控制分组。这种所谓的握手过程提醒客户机与服务器,使它们对随后的分组的突然到来做好准备。一旦握手过程结束,就可以说两个端系统之间建立了连接。
2、因特网的面向连接的服务与其他的服务共存,包括可靠数据传送。流控制和拥塞控制。
3、面向连接服务的基本组成部分是:通信实体之间握手的协议。
(2)无连接服务
1、在因特网无连接服务中不存在握手。当应用程序的一方要向应用程序的另一方发送分组时,发送程序直接发送这些分组即可。因为没有数据分组传输之前没有握手过程,数据能更好地传递。
2、数据传送没有可靠性可言,没有流控制和拥塞控制的功能。 3、无连接服务的基本的标志是:没有三次握手的过程。
二、电路交换、分组交换和报文交换
(1)电路交换
1、在电路交换网络中,沿着端系统通信路径,为端系统之间通信所提供的资源在通讯会话期间将会被预留。
2、缺点:电路交换效率较低,因为在静默期专用电路空闲。 3、电路交换分为:频分复用,时分复用。
(2)分组交换
1、在分组交换网络中,这些为端系统之间通信所提供的资源不会被预留,会话的报文按需使用这些资源,这样将导致可能不得不等待接入通信线路。
2、优点:提供了比电路交换网络更好的带宽共享;比电路交换更简单,更有效,实现成本更低。
三、分组交换网络:数据报网络和虚电路网络
(1)虚电路网络
1、我们称任何根据虚电路号转发分组的网络为虚电路网络
2、每个分组中都有虚电路标识符,对于VC而言,一条VC的源和目的地仅间接地通过 VC ID标识出来;元和目的端系统的实际地址并不必执行交换。
each packet carries tag (virtual circuit ID), tag determines next hop fixed path determined at call setup time, remains fixed thru call
(2)数据包网络
1、我们将任何根据主机目的地址转发分组的网络称为数据包网络。
2、在数据包网络中,每个通过该网络的分组在它的首部都包含了该分组的目的地址,该地址具有一种等级结构。当一个分组到达网络的分组交换机时,分组交换机检查该分组的目的地址的一部分,并向相邻交换机转发该分组。
each packet carries tag (virtual circuit ID), tag determines next hop fixed path determined at call setup time, remains fixed thru call routers maintain per-call state
四、应用需要的服务与因特网运输协议提供的服务
(1)应用层需要的服务
1、可靠的数据传输 2、带宽 3、定时
(2)因特网提供的服务
1、TCP:面向连接的服务;可靠的传输服务;具有拥塞控制;没有确保最小传输速率;不提供延时保证。
2、UDP:无连接服务;不可靠数据传输服务;没有拥塞控制机制;不提供延时保证。
五、HTTP协议(超文本传输协议)
(1)非持久连接:
每个TCP连接只传输一个请求报文和一个响应报文;每一个请求对象建立和维护一个全新的连接。
(2)持久连接:
服务器在发送响应后保持该TCP连接,在相同的客户机与服务器之间的后继请求和响应报文可以通过相同的连接进行传输。
1、非流水线方式:客户机只能在前一个响应接收后才能发出新的请求。 2、流水线方式:在一个响应请求未接收之间可以产生新的请求。
(3)过程
(1) 浏览器分析超链指向页面的 URL。
(2) 浏览器向 DNS 请求解析 www.tsinghua.edu.cn 的 IP 地址。 (3) 域名系统 DNS 解析出清华大学服务器的 IP 地址。 (4) 浏览器与服务器建立 TCP 连接 (5) 浏览器发出取文件命令:
GET /chn/yxsz/index.htm。
(6) 服务器给出响应,把文件 index.htm 发给浏览器。 (7) TCP 连接释放。
(8) 浏览器显示“清华大学院系设置”文件 index.htm 中的所有文本。
五、Cookie
1、第一次访问使用Cookie的电子商务网站,在请求报文到达Web服务器时,Web站点产生唯一的标识码,并且作为索引在它的后端数据库的一个项。
2、用包含Set-cookie首部行的HTTP响应报文对客户机进行相应。
3、当客户机接收到该HTTP响应报文时,浏览器将Cookie文件中添加Set-cookie中的标识码的内容。
4、再次访问该商务网站时,请求报文的首部行中会含有Cookie的标识码信息。
六、SMTP
(1)特点及约束条件
1、SMTP使用的传输层协议是 TCP的可靠数据传输,端口号25
2、SMTP直接传输,一般不使用中间邮件服务器
3、连接建立后:服务器与客户机执行应用层握手;进行TCP的可靠数据传输,来传输报文;TCP关闭连接
4、向服务器发送的命令是ASCII码的形式;服务器的回答:回答吗和英文解释 5、邮件报文的主体部分只能采用ASCII码表示
uses TCP to reliably transfer email message from client to server, port 25 direct transfer: sending server to receiving server three phases of transfer handshaking (greeting) transfer of messages closure
command/response interaction commands: ASCII text response: status code and phrase messages must be in 7-bit ASCII
(2)Alice 和 Bob 邮件发送过程
1、Alice启动邮件代理程序并且提供Bob的邮件地址,通过邮件代理发送邮件
2、Alice的邮件代理程序把报文发给Alice的邮件服务器,该邮件在这里被放到报文发送队列中
3、欲行在Alice邮件服务器上的SMTP客户端发现报文队列中的该报文,创建一个到运行在Bob邮件服务器上的TCP链接。
4、经过SMTP的握手后,SMTP客户机通过TCP连接发送Alice的报文
5、在Bob服务器端接收该报文,Bob的邮件服务器然后将该报文放入Bob的邮箱中
6、在Bob方便的时候,他调用用户代理阅读报文
七、可靠数据传输的原理
(1)rdt 1.0 完全可靠的信道上传输;发送端TCP接受应用程数据包以后传输给下层的网络层,接收端TCP接收包后直接传递给应用程。
(2)rdt 2.0 差错检验;接收方反馈;重传;停等协议,没有考虑ACK和NAK分组受损的情况。
(3)rdt 2.1 进行排序,0、1号;到收到含糊不清的ACK 或者NAK,都重发当前的分组。
(4)rdt 2.2 减少对于NAK的使用,用两个ACK代表NAK;
(5)rdt 3.0 考虑到丢包的现象,丢包或者是收到NAK后,都进行超时重传;
(6)Go-Back-N协议(滑动窗口协议)
1、发送方可以发送多个分组而不需要等待确认
2、窗口为 n:1
3、累计确认
4、如果出现超时现象,重发所有有发送的但是还没有确认过的分组。
5、接收方丢弃所有失序的分组,尽管该分组已经正确的接受
(7)选择重传协议(SR)
1、接收方将确认一个正确接受的分组而不管其是否有序,将失序的分组缓存起来
2、n:n
3、发送方每一个发送的包都有一个定时器,来进行单独的计时
4、窗口的大小和包的序列号数目有关
(8)TCP协议
1、累计确认:TCP只确认数据流中至第一个丢失字节为止的字节。
2、估计往返时延RTT
3、在TCP的快速重传机制下,收到一个特定的报文段的3个冗余的ACK就可以作为对后面报文的一个隐式的NAK,即超时之前进行对该报文的重传。
4、TCP确认是累积式的,正确接受但失序的报文不会被接收方逐个确认(可以实现将接受的无序的报文进行缓存)--Go-Back-N
5、Go-Back-N 在n 号分组丢失时,重传n-N 所有的分组。TCP至多传送一个分组,如果报文段n+1的确认信号在报文n超时之前到达,TCP不进行n号报文的重传。
6、流量控制与拥塞控制
7、TCP拥塞控制的方法--TCP拥塞控制算法加性增;慢启动;对超时事件作出反应。
八、虚电路和数据包网络
(1)虚电路网络
1、定义: 仅在网络层提供连接服务的计算机网络成为虚电路网络
2、VC组成:
(1)源和目的主机之间的路径
(2)VC号,沿着该路径的每段链路的一个号码
(3)沿着该路径的每台路由器中的转发表项
3、阶段:
(1)虚电路的建立;
(2)数据传送;
(3)虚电路拆除。
4、虚电路网络的路由器必须为进行中的连接维持连接状态信息。
(2)数据包网络
定义: 在数据包网络中,每当一个端系统要发送分组时,就为改分组加上目的地端系统的地址,然后将该分组推进网络中,完成这些无需建立任何虚电路。在数据包网络中路由器不维护任何有关的虚电路的状态信息。
九、选路算法
(1)分类
全局选路算法--链路状态算法 静态选路算法
分散式选路算法--距离向量算法
动态选路算法
(2)链路状态算法(LS)--全局算法
1、所有的节点具有该网络的同一个以及完整的视图。 2、Dijkstra算法
3、防止振荡(避免自同步)-- 对每一个路由器随机化他发送链路通告的时间。
(3)距离限量选路算法(DV)--分散式算法
1、没有计算应该停止的信号,持续到邻居之间没有更多的信息要交换为止。 2、异步的、迭代的、自我终结的
3、节点具有的唯一信息是它到直接相连邻居的链路费用和他从这些邻居接收到的信息。
4、解决无穷计数的问题--独行反转
十、自自治系统内部选路
(1)RIP(选择信息协议)
1、是一种距离向量协议
2、RIP版本使用跳步数作为费用度量
(2)OSPF(开放最短路径优先)
1、使用链路状态信息洪范的链路状态协议和一个Dijkstra最低费用路径算法
2、含有多种区域边界路由器:内部路由器,区域边界路由器,主干路由器,边界路由器。
十一、自制系统间的选路:BGP
路由选择:
1、路由被指派一个本地偏好值作为他们的属性之一
2、从余下的路由器中,具有最短AS-PATH的路由将被选择
3、从余下的路由中,选择具有最靠近NEXT-HOP路由器的路由(热土豆选路) 4、如果任剩下多余的路由,该路由使用BGP标识以选择路由
十二、多路访问协议
(1)信道划分协议
1、时分复用:将时间划分为时间频
2、频分复用:将信道划分为不同的频段
3、码分多址:对节点分配不同的编码
(2)随机访问协议
1、时隙ALOHA: 节点只在时隙的开始传输帧 2、ALOHA:非时隙的,完全分散协议 3、载波监听多址访问(CSMA):载波监听,碰撞检测;发生碰撞后,继续完整的传输它们的帧 (3)轮流协议
1、轮询协议:指定一个主节点,主节点以循环的方式轮询每个节点
2、令牌传递协议:没有主节点,一个小的成为令牌的特殊的目的帧在这些的节点之间以某个固定的次序交换。
十三、动态主机配置协议
(1)DHCP服务器发现:DHCP客户端广播(255.255.255.255.68)
(2)DHCP服务器提供:DHCP服务器广播(255.255.255.255.67)
(3)DHCP请求:广播:通知其他DHCP的请求者,这个IP已经被申请
(4)DHCP ACK:DHCP服务器广播通知某一个IP已经给了某个DHCP客户端。