摘要:参考课程中科大郑老师计算机网络参考书籍计算机网络自顶向下方法原书第七版什么是因特网是一个世界范围的计算机网络,即它是一个互联了遍及全世界数计算设备的网络。
不要成为理想的巨人,行动的矮子
为了更好地学习和掌握《计算机网络》这门课程,打算把自己的学习笔记转化为博客,以便于更好地复习,也便于大家一起学习与交流。
参考课程:中科大-郑老师《计算机网络》
参考书籍:《计算机网络自顶向下方法》原书第七版
因特网是一个世界范围的计算机网络,即它是一个互联了遍及全世界数计算设备的网络。
计算设备 : 主机(端系统)、运行的网络应用程序
节点:
例如:手机、平板、电视、游戏机… 这一些设备都称为主机 ,也可以叫做端系统。
边 : 通信链路
端系统通过通信链路(communication link)和分组交换机(packet switch)连接到一起。 链路的传输速率以比特/秒(bit/s, bps)度量。
通信链路 :
分组交换机 : 转发分组(packets)
端系统通过**因特网服务提供商(Internet Service Provider, ISP)**接入因特网,例如:本地住宅区ISP,公司ISP,大学ISP…
协议 :控制发送、接收消息, 例如 TCP、IP、HTTP、FTP、PPP都是协议
使用通信设施进行通信的分布式应用:WEB、Voip、email、分布式游戏、电子商务、社交网络…
通信基础设施为apps提供编程接口(通信服务)
端系统(主机):
客户/服务器模式
**对等(peer-peer)**模式
目标:在端系统之间传输数据
TCP-传输控制协议(Transmission Control Protocol):TCP向它的应用程序提供了面向连接的服务。这种服务包括了应用层报文向目的地的确保传递和流量控制(即发送方/接收方速率匹配)。TCP也将长报文划分为短报文,并提供无连接服务,因此当网络拥塞时,源抑制其传输速率。
目标:在端系统之间传输数据
UDP-用户数据报协议(User Datagram Protocol): UDP协议向它的应用程序提供无连接服务。这是一种不提供不必要服务的服务,没有可靠性,没有流量控制,也没有拥塞控制。
使用TCP的应用:HTTP(Web)、FTP(文件传送)、Telnet(远程登录)、SMTP(email)
使用UDP的应用:流媒体、远程会议、DNS、Internet电话
网络核心:路由器的网状结构
基本问题:数据怎么通过网络进行传输?
在电路交换网络中,在端系统间通信会话期间,预留了端系统间沿路径通信所需要的资源(缓存,链路传输速率)。在分组交换网络中,这些资源则不是预留的。
端到端的资源被分配给源端到目标端的呼叫(call)
如上图中, 每段链路有4条线路:
如上图,每台主机(例如PC和工作站)都与一台交换机直接相连,当两台主机要通信时,该网络在两台主机之间创建一条专用的端到端连接(end-to-end connection)。因此,主机A为了向主机B发送报文,网络必须在两条链路的每条上先预留一条电路。
为呼叫预留端-端资源
网络资源(如带宽)被分成片
为呼叫分配片
如果某个呼叫没有数据,则其资源片处于空闲状态(不共享)
将带宽分成片
电路交换:FDM与TDM
计算举例
电路交换不适合计算机之间的通信
在各种网络应用中,端系统彼此交换报文(message)。
为了从源端系统向目的端系统发送一个报文,源将长报文划分为较小的数据块,称之为分组(packet)。
以分组为单位存储-转发方式
资源共享,按需使用:
被传输到下一个链路之前,整个分组必须到达路由器:存储-转发
一个速率为R bps的链路,一个长度为L bits的分组的存储转发延时:L/R s
考虑一般的情况:通过由N条速率均为R的链路组成的路径(所以,在源和目的地之间有N-1台路由器),从源到目的地发送一个分组,那么端到端的时延是: d t e x t 端 到 端 = N L R d_text{端到端} = N/frac{L}{R} dtext端到端=NRL
Example
L = 7.5 Mbits R = 1.5 Mbps
3次存储转发的延时 = 15 s
排队和延迟:
分组的存储转发一段一段从源端传到目标端,按照有无网络层的连接,分成:
数据报网络和虚电路网络。
数据报网络
数据报(datagram)的工作原理
虚电路网络
同样的网络资源,分组交换允许更多用户使用网络!
Example:
假设多个用户共享一条1Mbps链路,再假定每个用户活跃周期是变化的,某用户时而100kbps恒定速率产生数据,时而静止——这时用户不产生数据,假设该用户仅有10%时间活跃。
对于电路交换,能支持10(=1Mbps/100kbps)个并发的用户。
对于分组交换,假如有35个用户,有>=10个用户活动的概率为0.0004
计算公式: 1 − ∑ n = 0 9 ( 35 a ) p n ( 1 − p ) 35 − n 1 - /sum/limits_{n = 0}^9 /begin{pmatrix} 35// a/end{pmatrix} p^n(1-p)^{35-n} 1−n=0∑9(35a)pn(1−p)35−n
分组交换是“突发数据的胜利者”
Q:怎样将端系统和边缘路由器连接?
家庭接入:DSL、电缆、FTTH、拨号和卫星
宽带住在接入有两种最流行的类型:数字用户线(Digital Subscriber Line, DSL) 和电缆。住宅通常从提供本地电话接入的本地电话公司处获得DSL因特网接入。
modem :
DSL:
线缆网络:
有线电视信号线缆双向改造
FDM: 在不同频段传输不同信道的数据,数字电视和上网数据(上下行)
企业接入网络(Ethernet)
以太网(Ethernet)是目前为止,公司、大学和家庭网络中最为流行的接入技术。
无线接入网络
对于每个发射器-接收器对,通过跨越一种**物理媒体(physical medium)**传播电磁波或光脉冲来发送该比特。
同轴电缆:
光纤和光缆
无线链路类型
如何建立“网络的网络”: 将每个接入ISP都连接到全局ISP(全局范围内覆盖)?
客户ISPs和提供者ISPs有经济合约
但是,如果全局ISP是可行的业务,那会有竞争者有利可图,一定会有竞争
竞争:但如果全局ISP是有利可为的业务,那会有竞争者;合作:通过ISP之间的合作可以完成业务的扩展,肯定会有互联,对等互联的结算关系。
然后业务会细分(全球接入和区域接入),区域网络将出现,用与将接入ISPs连接到全局ISPs。
然后内容**提供商网络(Internet Content Providers,e.g., Google,Microsoft, Akamai)**可能会构建它们自己的网络,将它们的服务、内容更加靠近端用户,向用户提供更好的服务,减少自己的运营支出。
在网络的最中心,一些为数不多的充分连接的大范围网络(分布广、节点有限、
但是之间有着多重连接)
总结
第二层ISP: 更小些的(通常是区域性的) ISP
第三层ISP与其他本地ISP
一个分组要经过许多网络
分组丢失和延时是怎样发生的?
在路由器缓冲区的分组队列
节点处理延时:
排队延时:
传输延时:
传播延时:
传输时延和传播时延的比较
传输时延是路由器推出分组所需要的时间,它是分组长度和链路传输速率的函数,而与两台路由器之间的距离无关。
传播时延是一个比特从一台路由器传播到另一台路由器所需要的时间,它是两台路由器之间距离的函数。
d n o d a l = d p r o c + d q u e u e + d t r a n s + d p r o p d_{nodal} = d_{proc} + d_{queue} + d_{trans} + d_{prop} dnodal=dproc+dqueue+dtrans+dprop
Traceroute 诊断程序: 提供从源端,经过路由器,到目的的延时测量。
吞吐量: 在源端和目标端之间传输的速率(数据量/单位时间)
例如上图,对于两链路网络,其吞吐量为: min R s , R c /min{R_s, R_c} minRs,Rc.
瓶颈链路: 端到端路径上,限制端到端吞吐的链路。
对于N条链路的网络,其吞吐量为 min R 1 , R 2 , ⋯ , R N /min{R_1, R_2, /cdots, R_N} minR1,R2,⋯,RN。
互联网场景
对于10个连接(公平地)共享Rbps的瓶颈链路
其每个连接上的端到端的吞吐量为 min R c , R s , R / 10 /min{R_c, R_s, R/10} minRc,Rs,R/10
网络是一个复杂的系统!
Q:如何组织和实现这个复杂的网络功能
层次化方式时延复杂网络功能:
服务( Service):低层实体向上层实体提供它们之间的通信的能力
服务访问点SAP (Services Access Point):上层使用下层提供的服务通过层间的接口—地点;
服务的类型:
面向连接的服务 和 无连接的服务 方式
面向连接的服务( Connection-oriented Service)
无连接的服务(Connectionless Service)
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/119193.html
摘要:从如何接入网络到数据返回给我们这个过程。路由器是根据网络地址进行转发,属于网络层。此时我们就拿到和服务器的地址,和我们默认网关的地址。 博客新址,这里更有趣 之前对于黑砖头书,一直有种抵触感,看着看着就不想看了,总感觉TM这么厚,什么时候能看完,看着就愁,暑假,硬着头皮啃了《Thinking in Java》,还有《Head First设计模式》,边做笔记,边读,这样还是蛮有成就感的,...
摘要:简述计算机网络中的七层模型常见的状态码有哪些的三次握手过程为什么会采用三次握手,若采用二次握手可以吗的三次握手过程主机向发送连接请求主机对收到的主机的报文段进行确认主机再次对主机的确认进行确认。面向字节流面向报文。 ...
摘要:在计算机网络发展面临重大机遇的同时,网络安全形式也日益严峻,国家政治经济文化社会国防安全及公民在网络空间的合法权益面临着风险和挑战。最早的计算机网络也被称为计算机通信网。现阶段,一个完整的计算机网络结构体系由两部分组成。 ...
摘要:服务器收到请求后,分析请求,进行必要的处理,得到结果并发送给客户机。客户机相互之间不直接通信例如应用中两个浏览器并不直接通信可扩展性不佳。一个进程可以被认为是运行在端系统的一个程序。 ?首先得说! ?1.本专栏的计算机网络文稿主要是因为爱好,顺便包含了408考试的全部内容,如果可以将其内容全...
阅读 491·2021-10-14 09:42
阅读 1749·2021-09-22 15:04
阅读 3812·2021-09-06 15:00
阅读 1358·2019-08-30 12:44
阅读 2027·2019-08-29 13:29
阅读 2603·2019-08-29 12:51
阅读 421·2019-08-26 18:18
阅读 583·2019-08-26 13:43