四川大学计算机网络知识点.docx
《四川大学计算机网络知识点.docx》由会员分享,可在线阅读,更多相关《四川大学计算机网络知识点.docx(28页珍藏版)》请在冰豆网上搜索。
四川大学计算机网络知识点
单工就是在同一时间只允许一方向另一方传送信息,而另一方不能向一方传送
半双工是在同一时间只允许2方中的一方传送数据,一方接受数据
全双工是在同一时间允许2方既可以向一方传送数据也可以接受数据
SLIP(SerialLineInternetProtocol)串行线路网际协议,主要在Unix远程访问服务器中使用,现今仍然用于连接某些ISP。
因为SLIP协议是面向低速串行线路的,可以用于专用线路,也可以用于拨号线路。
RTT(Round-TripTime):
往返时延,表示一个小分组从客户机到服务器再回到客户机所花费的是时间。
XML(ExtensibleMarkupLanguage)可扩展标记语言,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。
计算机网络的带宽(bandwidth)是指网络可通过的最高数据率,即每秒多少比特。
层
数据
Applicationlayer
Massage(消息)
TransportLayer
Segment(报文段)
NetworkLayer
Datagram(数据报)
LinkLayer
Frame(帧)
第一章
1.网络边缘:
①endsystem(host)②clients③servers
2.两种移动数据的方法:
①circuitswitching(reserved)②packetswitching(notreserved)
每条链路有n跳电路,由端到端的连接使用,该连接在连接器件获得该链路带宽的
。
ComparetheadvantagesanddisadvantagesabouttheCircuit-Switched,messageswitching andpacketswitching
电路交换:
是一种直接的交换方式,两个站点进行通信之前,先建立起一条连接两端的物理通路,再在这条通路上进行信息传输。
优点:
①由于通信线路为通信双方用户专用,数据直达,所以传输数据的时延非常小。
②通信双方之间的物理通路一旦建立,双方可以随时通信,实时性强。
③双方通信时按发送顺序传送数据,不存在失序问题。
④电路交换既适用于传输模拟信号,也适用于传输数字信号。
⑤电路交换的交换的交换设备(交换机等)及控制均较简单。
缺点:
①电路交换的平均连接建立时间对计算机通信来说嫌长。
②电路交换连接建立后,物理通路被通信双方独占,即使通信线路空闲,也不能供其他用户使用,因而信道利用低。
③电路交换时,数据直达,不同类型、不同规格、不同速率的终端很难相互进行通信,也难以在通信过程中进行差错控制。
分组交换:
分组交换仍采用存储转发传输方式,但将一个长报文先分割为若干个较短的分组,然后把这些分组(携带源、目的地址和编号信息)逐个地发送出去。
优点:
①加速了数据在网络中的传输。
因为分组是逐个传输,可以使后一个分组的存储操作与前一个分组的转发操作并行,这种流水线式传输方式减少了报文的传输时间。
此外,传输一个分组所需的缓冲区比传输一份报文所需的缓冲区小得多,这样因缓冲区不足而等待发送的机率及等待的时间也必然少得多。
②简化了存储管理。
因为分组的长度固定,相应的缓冲区的大小也固定,在交换结点中存储器的管理通常被简化为对缓冲区的管理,相对比较容易。
③减少了出错机率和重发数据量。
因为分组较短,其出错机率必然减少,每次重发的数据量也就大大减少,这样不仅提高了可靠性,也减少了传输时延。
④由于分组短小,更适用于采用优先级策略,便于及时传送一些紧急数据,因此对于计算机之间的突发式的数据通信,分组交换显然更为合适些。
缺点:
①尽管分组交换比报文交换的传输时延少,但仍存在存储转发时延,而且其结点交换机必须具有更强的处理能力。
②分组交换与报文交换一样,每个分组都要加上源、目的地址和分组编号等信息,使传送的信息量大约增大5%~10%,一定程度上降低了通信效率,增加了处理的时间,使控制复杂,时延增加。
③当分组交换采用数据报服务时,可能出现失序、丢失或重复分组,分组到达目的结点时,要对分组按编号进行排序等工作,增加了麻烦。
若采用虚电路服务,虽无失序问题,但有呼叫建立、数据传输和虚电路释放三个过程。
报文交换:
采用的是存储转发交换方式。
通信子网中每个节点都设置有缓冲存储器,到达的报文先送入缓冲区暂存,进行路由选择后向下传送。
总之,若要传送的数据量很大,且其传送时间远大于呼叫时间,则采用电路交换较为合适;当端到端的通路有很多段的链路组成时,采用分组交换传送数据较为合适。
从提高整个网络的信道利用率上看,报文交换和分组交换优于电路交换,其中分组交换比报文交换的时延小,尤其适合于计算机之间的突发式的数据通信。
3.Guidedmediaunguidedmedia
①fiber-opticcable①WLAN
②atwisted-paircopperwine②adigitalsatellitechannel
③coaxialcable
4.接入网(AccessNetworks)
①residentialaccess:
DSL、HFC
②companyaccess
③wirelessaccess
5.四类时延
①nodalprocessingdelay(节点):
检查分组首部,决定该分组导向何处
②queuingdelay(排队):
在链路上等待传输
③transmissiondelay(传输)是
,将所有分组的比特传送至链路所需要的时间。
④propagationdelay(传播)从起点路由器到终点路由器的传播时间。
6.流量强度(trafficintensity)=
,当接近于1时时延变得很大。
①所有分组由L比特组成
②R是传输速率,即比特从队列中推出的速率。
③a表示分组到达队列的速率。
第二章——Applicationlayer
1.三种应用程序架构
名称
特点
应用
Client-serverarchitecture
有一个永远开着的主机-服务器,服务器有一个固定的IP地址
Theweb、filetransfer、remotelogin、email
P2Parchitecture
Peers直接与对方交流,分布式、不集中、花费小、自扩展性好
流量密集型应用
Ahybridofthem
eg.InaP2Pfile-sharingapplication,doyouagreewiththestatement:
”Thereisnonotionofclientandserversidesofacommunication”?
Whyorwhynot?
No.Asstatedinthetext,allcommunicationsessionshaveaclientsideandaserverside.InaP2Pfile-sharingapplication,thepeerthatisreceivingafileistypicallytheclientandthepeerthatissendingthefileistypicallytheserver.
在p2p文件共享应用中,发送文件的那一方相当于服务器,收文件的那一方相当于客户机。
P2P组网过程
①确定网络的拓扑结构
②选择合适的传输介质。
③根据传输介质的类型、网络的运行速度、网络的覆盖范围等选择网络连接设备。
④硬件连接。
⑤网络软件的安装。
⑥设置资源共享。
2.Loss-tolerantapplication:
①real-timeaudio/video②storedaudio/video
Bandwidth-sensitiveapplication:
①multimediaapplication
Elasticapplication:
①e-mail②filetransfer③webtransfer
3.HTTP协议(超文本传输协议):
用TCP作为它的底层协议,并且thedefaultmodeofHTTPusespersistentconnectionwithpipelining,并且是statelessprotocol,带内(in-band)发送控制信息。
HTTP请求报文:
①connectionclose:
想要服务器在对象传送完之后关闭连接。
②使用get方法时实体主体为空,使用post方法时才被使用。
HTTP响应报文:
①Date:
指示服务器产生并发送响应报文的日期和时间。
②Last-Modified:
指示了对象创建或者最后修改的日期和时间。
HTTP的一些状态码:
①200ok
②301movepermanently(对象已永久转移)
③400badrequest
④404notfound
⑤505httpversionnotsupport
一个客户机向服务器请求一个html文件的过程:
eg.HTTP的持久连接和非持久连接
①客户机向服务器发送一个小的TCP
eg.ComparethedifferencebetweenpersistentHTTPwithpipeliningandpersistentHTTPwithoutpipelining.WhichofthetwoisusedbyHTTP/1.1?
在非流水线的HTTP持久连接中,客户机只能在接收到服务器发来的前一个响应后才能发出新的请求。
在流水线的HTTP持久连接中,浏览器只要有需要就会发出请求,不需要等待服务器的响应信息。
HTTP/1.1的默认模式使用了流水线方式的持久连接。
4.Cookies:
指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据。
5.文件传输协议FTP,FTP服务器要保留用户状态信息,notstatelessprotocol。
与HTTP最大的区别就是使用两个TCP并行连接来传输文件
①控制连接(persistant):
用于在两个主机之间传输控制信息,FTP的控制信息是带外(out-of-band)传送的
②数据连接(notpersistant):
用于实际传输一个文件
6.Internetmailsystem的三个组件:
①useragent②mailserver③SMTP
7.SMTP(SimpleMailTransferProtocol):
即简单邮件传输协议。
SMTP是一种TCP协议支持的提供可靠且有效电子邮件传输的应用层协议。
SMTP是建立在TCP上的一种邮件服务,主要用于传输系统之间的邮件信息并提供来信有关的通知。
在SMTP中,发邮件的是client,收邮件的是server。
SMTP与HTTP作比较
HTTP
SMTP
共同点:
①都用于从一台主机向另一台主机传送文件
②都是用持久连接
HTTP是一个拉协议(pull),用户使用HTTP从服务器上拉取信息
SMTP是一个推协议,发送邮件的服务器把文件推向接收邮件的服务器
无要求
SMTP要求每个报文都使用7位ASC码格式
HTTP把每个对象封装到它自己的HTTP响应报文中
SMTP把所有报文对象放在一个报文之中
HTTP使用带内控制
SMTP
8.MIME(MultipurposeInternetMailExtensions)一种多用途网际邮件扩充协议,服务器会将它们发送的多媒体数据的类型告诉浏览器,而通知手段就是说明该多媒体数据的MIME类型,从而让浏览器知道接收到的信息类型。
9.邮件访问协议:
①POP3②IMAP③HTTP
10.POP3(PostOfficeProtocol3)即第三版的邮局协议,用来将邮件从接收方的服务器传送到接收方的用户代理。
会话中不包括状态信息,是statelessprotocol。
POP3协议没有给用户提供任何创建远程文件夹以及为报文指定文件夹的方法。
11.IMAP(InternetMailAccessProtocol)即因特网邮件访问协议,它的主要作用是邮件客户端可以通过这种协议从邮件服务器上获取邮件的信息,下载邮件等。
IMAP为用户提供了创建文件夹以及在文件夹之间移动邮件的命令,并且允许用户代理获取报文组件的命令。
Web缓存、proxyserver
12.DNS(DomainNameSystem)域名系统,主要功能是将主机名转换为IP地址。
TheDNSprotocolrunsoverUDPanduse53portnumber。
域名:
DNS提供的三种其他的服务:
①Hostaliasing(主机别名)
②Mailserveraliasing(邮件服务器别名)
③Loaddistribution(负载分配)
三类DNS服务器:
①RootDNSserver
②top-leveldomainserver
③Authoritativeserver
每个因特网主机至少有一个Localnameserver和Authoritativenameserver
①每个ISP都有一个局部名称服务器,localnameserver接收DNS的查询请求,它一般是位于同一个局域网中。
②权威名字服务器:
每个主机都被记录在一个权威名字服务器上。
通常,一个主机的权威名字服务器是该主机的局部ISP中的名称服务器。
主要负责将主机名称解析为DNS记录,那么该名称服务器对于主机来说就是权威性的。
13.Socket是应用程序与传输层之间(TCP)的门,进程在网络上发送和接收报文都要经过套接字软件接口。
第3章——Transportlayer
1.运输层为运行在不同主机上的进程之间提供了逻辑通信;网络层则提供了主机之间的逻辑通信。
运输层协议只工作在端系统,在端系统中,运输层协议将来自应用进程的报文移动到网络边缘(即网络层)。
2.Transportlayer与Networklayer的比较
3.ThemostfundamentalresponsibilityofUDPandTCPistoextendIP'sdeliveryservicebetweentwoendsystemtoadeliveryservicebetweentwoprocessesrunningontheendsystems.
将主机间交付扩展到进程间交付,称为运输层的多路复用和多路分解。
4.多路复用(Multiplexing):
从源主机的不同套接字收集数据块,并为每个数据块封装上首部信息,从而生成报文段,然后将报文段传输到网络层。
运输层多路复用的要求:
①套接字有唯一标识符②每个报文段有特殊字段(源端口号、目的端口号)来指示该报文段所要交付的套接字。
5.多路分解(Demultiplexing):
将运输层报文段中的数据交付到正确的套接字的工作称为多路分解。
6.UDP套接字是由一个二元组(twotuple)来全面标识的:
目的地址、目的端口号
如果两个UDP报文段有不同的IP地址和/或源端口号,但具有相同的目的IP地址和目的端口号,那么这两个报文段将通过相同的目的套接字定向到相同的目的进程。
7.TCP套接字是由一个四元组(fourtuple)来标识的:
源IP地址、源端口号、目的IP地址、目的端口号
与UDP不同的是,两个具有不同源IP地址或源端口号的到达的TCP报文段将被定向到两个不同的套接字,除非TCP携带了初始创建连接的请求。
8.端口号(portnumber)——16bit
①总共的范围是0-65535,0-1023是周知端口号(well-knowportnumber)
②http-80
③DNS-53
④FTP-21
⑤SMTP-25
⑥POP3-110
9.UDP
UDP(UserDatagramprotocol)
用户数据报协议:
providesaunreliable、connectionlessservicetoapplication
提供的服务
①process-to-processdatadelivery
②errorcheckingonanend-to-endbasis,并不差错恢复
使用UDP的原因
①应用层能够更好地控制要发送的数据和发送时间
②无需建立连接
③无连接状态
④首部开销小
应用
多媒体(multimedia)、DNS
UDP报文段:
首部一共8个字节,4个字段
源端口号
目的端口号
长度
检验和
应用数据(报文message)
10.RDT(Reliabledatatransfer)
RDT1.0
RDT2.0(等停协议stop-and-waitprotocol)
RDT3.0(比特交替协议alternating-bitprotocol)
11.流水线(pipelining):
允许发送方发送多个分组而无需等待确认。
解决流水线的差错恢复有两种基本的方法:
①GBN:
退回N步②SR:
选择重传
12.GBN(滑动窗口协议)
滑动窗口(Slidingwindow)是一种流量控制技术。
那些已被发送但是还未被确认的分组的许可序号范围可以被看成是一个在序号范围长度为N的窗口,随着协议的运行,该窗口在序号空间内向前滑动。
N常被称为窗口长度,GBN协议常被称为滑动窗口协议。
GBN的发送方:
①上层调用rdt_send()时,发送方首先检查发送窗口是否已满,即是否有N个已发送但未被确认的分组。
如果未满则创建一个分组并将其发送。
②收到ACK,对序号为n的分组确认采取的是累积确认方式,表明接收方已正确收到序号n以前的所有分组。
③超时,如果出现超时,发送方将重传所有已发送但未被确认的分组。
GBN的接收方:
①如果一个序号为n的分组被正确接收到,并且按序交付给上层(即上次交付给上层的数据是序号为n-1的分组),则接收方为分组n发送一个ACK,并将该分组中的数据交付到上层。
在其他所有情况下,接收方都将丢弃该分组。
②接收方丢弃所有失序分组,必须按序将数据交付给上层。
③接收方缓存简单,不需要缓存任何失序的分组。
eg.SupposethesenderandreceiverinapipelinedreliabledatatransferprotocolhaveawindowofsizeN.Supposethesequencenumberofthesegmentatthebaseofthewindowatthereceiverisx.Whatisthepossiblerangeofsequencenumbersinthesender’window?
Justifyyouranswer.
如果接收窗口base值为x,有N个分组到达;如果x之前的ACK未被发送者收到,那么窗口的序列号范围为[x-N+1,x];如果ACK全被发送者收到,则范围为[x,x+N-1];所以总范围是[x-N+1,x+N-1].
一帧正确到达接收方后,则接收方再依次将它缓存的帧递交给网络层。
13.SR(选择重传)让发送方仅重传那些它怀疑在接收方出错(丢失或受损)的分组而避免了不必要的重传。
SR发送方:
①从上层收到数据,检测下一个可以用于该分组的序号。
如果序号在发送方的窗口内,则将数据打包并发送。
②超时。
每个分组都有定时器,超时后重传。
③收到ACK。
如果收到ACK,且该序号在窗口内,则SR发送方将那个被确认的分组标记为已接收。
然后将窗口向前移动到具有最小序号的未被确认的分组处。
SR接收方:
①接收方将确认一个正确接收的分组而不管其是否按序。
失序的分组将被缓存直到所有的丢失分组(即序号更小的分组)都被收到,这时才将一批数据按序交付给上层。
对SR协议而言,发送方和接收方的窗口并不总是一致的,窗口的长度必须小于或等于序号空间大小的一半。
eg.Whichprotocol(GoBack-NorSelectiveRepeat)makesmoreefficientuseofnetworkbandwidth?
Why?
SelectiveRepeatismoreefficient,回退N帧(发送窗口大,而接收窗口只有1)只能顺序的接收帧,无NAK(negativeacknowledgement),采用超时重发。
一个帧到达接收方所需要的传输时间加上确认帧回来的传输时间是不可以忽略不记的,因此有必要提高发送方发送的效率。
将发送窗口设置成合适的位置,避免带宽的浪费。
选择性重传(发送窗口、接收窗口>1)需要用到NAK,NAK可以激发重传操作,不需要回退N帧,之需要重传出错的那帧。
如果接收到坏帧,丢弃。
同时坏帧后面的好帧被缓存起来。
当发送发超时以后,它只重传最早的未被确认的那一帧,如果那一帧正确到达接收方后,则接收方再依次将它缓存的帧递交给网络层。
14.TCP
TCP协议只在端系统中运行,而不在中间的网络元素(路由器交换机)中运行,所以中间元素不会维持TCP连接转状态。
中间路由器对TCP连接完全不知情,它们看到的是数据报而不是连接。
TCP(Transmissioncontrolprotocol)
传输控制协议:
providesareliable、connection-orientedservicetoapplication
提供全双工服务
(full-duplexservice)
如果一套主机上的进程A与另一台主机上的进程B存在一条TCP连接,那么应用层数据就可以在进程B流向进程A的同时,也从进程A流向进程B
点对点(point-to-point)
在单个发送发与单个接收方之间连接
提供累积确(cumulativeacknowledgement)
TCP只确认数据流中至第一个丢失字节为止的字节
提供的服务
①reliabledatatransfer②flowcontrol
③congestioncontrol④errorchecking
⑤sequencenumber⑥timer⑦acknowledgment
TCP连接的组成
一台主机上的缓存、变量与一个进程连接的套接字,
另一台主机上的缓存、变量与一个进程的套接字
MSS:
最大报文段长,报文段里应用层数据的最大长度,而不包括TCP首部
TCP报文段结构
源端口号
目的端口号
序号
确认号
XXXXXXXXXXX
接收窗口
互联网校验和
紧急数据