Skip to content

obama142857/computer-network

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 

Repository files navigation

电路交换与分组交换

电路交换的主要特点
  • 电路交换通常采用面向连接方式
  • 先呼叫建立连接,实现端到端的资源预留,通话的两个用户始终占用端到端的通信资源
  • 预留的资源包括: 链路带宽资源、交换机的交换能力
  • 计算机数据具有突发性,这导致在传送数据时,信道利用率低
报文交换
  • 信道利用率较高,要求中间节点缓存大,时延较长
  • 不用建立连接
  • 采用存储转发,路径多选择
分组交换

采用存储转发技术:在发送端,先把较长的报文划分成更小的等长数据段。发送端依次把各分组发送到接收

  • 根据首部中包含的目的地址、源地址等重要控制信息进行转发
  • 每一个分组在互联网中独立选择传输路径
  • 位于网络核心部分的路由器负责转发分组,即进行分组交换
  • 路由器要创建和动态维护转发表。
  • 时延小,信道利用率高,节点存储器利用率高,易于重传,可靠性高,可能出现乱序、丢失、重复的问题
  • 高效灵活迅速可靠

虚电路和数据报的区别

  • 传输方式,先建立连接
  • 分组标识
  • 路由器需要维持虚电路信息,维持转发状态信息
  • 路由选择
  • 分组按序/乱序到达
  • 可靠性与适应性(某个路由器损坏)

分析上网下载会出现下载速度较慢的原因

  • 网络协议限制了物理带宽的使用

  • 信道利用率低

  • 分组时延和丢失

  • 流量控制

  • 拥塞控制

TCP

接收方
  • 使用累积确认
  • 缓存失序的报文段
  • 对失序报文段发送重复ACK,发送的确认号是最早没按序收到的包的起始字节序号
  • 增加了推迟确认
发送方
  • 设置单一计时器,仅对最早发送还未收到确认的分组计时,超时后重传该分组

  • 超时后仅重传最早未确认的报文段

  • 增加了快速重传

查询域名的执行过程

dns层次结构各层之间的作用:为下一层名称服务器提供域名和ip地址

采用分层的原因

  • 规模

  • 管理

IP地址特点及划分方式

(1)分类的IP地址 IP = {<网络号>,<主机号>}

IP地址分为A,B,C,D,E五类

  • 优点:管理简单,使用方便;转发分组迅速;划分子网,灵活的使用
  • 缺点:设计上不合理,大地址块浪费地址资源;即使采用划分子网的方式,也无法解决IP地址枯竭的问题
(2)子网划分 IP = {<网络号>,<子网号>,<主机号>}
  • 优点:相比IP分类方法,分配方式灵活性较高
  • 缺点:还存在IP地址浪费
(3)无分类编址(CIDR)IP = {<网络前缀>,<主机号>}
  • 优点:消除了传统的A类,B类,C类地址以及划分子网的概念,可以更加有效的分配IPV4的地址空间
  • 缺点:无法解决IP地址枯竭的问题

解决ipv4地址不够用

  1. 采用无类别编址CIDR,使IP地址的分配更加合理
  2. 采用网络地址转换(NAT)方法以节省全球IP地址
  3. 采用具有更大地址空间的新版本的IPv6

TCP的拥塞控制

  1. 慢启动:在一条TCP连接开始后,cwnd的值初始设为1个mss,每收到一个报文段的确认就增加一个mss,即每个RTT翻倍
  2. 拥塞避免:当cwnd的值超过ssthresh慢启动门限,开始使用拥塞避免。每经过一个RTT,cwnd加一
  3. 出现拥塞:ssthresh设为出现拥塞时的一半,cwnd设为1,重新开始慢启动

TCP流量控制

接收方
  • 使用显式的窗口通告,告知发送方可用的缓存空间大小,(发送方限制未确认的字节数不超过接收窗口的大小)
  • 在接收窗口较小时,推迟发送确认
  • 通告零窗口之后,仅当接收窗口显著增加时,通告新的窗口大小
发送方
  • 使用Nagle算法确定发送时机
  • 使用接收窗口限制发送的数据量,已发送未确认的字节数不超过接收窗口的大小

网络层的数据平面和控制平面有哪些功能

数据平面:路由器根据本路由器生成的转发表,把收到的分组从查找到的对应接口转发出去

控制平面:根据路由选择协议所用的路由算法计算路由,创建出本路由器的路由表

BGP协议的特点

  • 用于自治系统 AS 之间的路由选择
  • eBGP从相邻AS处获得子网的可达信息,iBGP向AS内部所有路由器传播这些可达信息
  • 只能是力求选择出一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要计算出一条最佳路由
    1. 互联网的规模太大,使得自治系统AS之间路由选择非常困难
    2. 自治系统AS之间的路由选择必须考虑有关策略
  • 采用了路径向量(path vector) 路由选择协议。
  • 从相邻AS获得子网的可达性信息,向AS内部所有的路由器传播这些可达性信息

BGP路由

OSPF的特点

  • 采用洪泛法 (flooding),向本自治系统中所有路由器发送信息
  • 发送的信息是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息
  • 当链路状态发生变化或每隔一段时间 (如30分钟),路由器才用洪泛法向所有路由器发送此信息
  • 基于dijk

RIP协议的特点

  • 仅和相邻路由器交换信息
  • 基于DV
  • 交换的信息是当前本路由器所知道的全部信息,即路由表
  • 固定时间间隔或者网络拓扑发生变化时交换路由信息

访问google

  1. 笔记本电脑通过DHCP(动态主机配置协议)获取其IP地址、第一跳路由器的IP地址和DNS服务器的IP地址子网掩码。

    • 笔记本电脑通过DHCP(动态主机配置协议)获取其IP地址、第一跳路由器的IP地址和DNS服务器的IP地址。
    • DHCP请求被封装在UDP中,再封装在IP中,最后封装在802.3以太网帧中。
    • 以太网帧以广播方式发送(目标地址为FFFFFFFFFFFF)在局域网上,被运行DHCP服务器的路由器接收。
    • 以太网帧解复用到IP,再解复用到UDP,最终解复用到DHCP。
    • DHCP服务器生成包含客户端IP地址、客户端第一跳路由器的IP地址以及DNS服务器的名称和IP地址的DHCP ACK。
  2. 在发送HTTP请求之前,需要www.google.com的IP地址:DNS

    • 创建DNS查询,封装在UDP中,再封装在IP中,最后封装在以太网帧中。为了将帧发送到路由器,需要路由器接口的MAC地址:ARP。
    • 发送ARP查询广播,由路由器接收,路由器回复ARP响应,提供路由器接口的MAC地址。
    • 客户端现在知道第一跳路由器的MAC地址,因此可以发送包含DNS查询的帧。
    • 帧解复用到DNS,DNS回复带有www.google.com的IP地址。
  3. 在发送HTTP请求之前,先打开到web服务器的TCP套接字

    • 为了发送HTTP请求,客户端首先向Web服务器打开TCP套接字。
    • TCP SYN段(TCP三次握手的第一步)通过网络互联到Web服务器。
    • Web服务器回复TCP SYNACK(TCP三次握手的第二步)。
    • TCP连接建立!
    • 将HTTP请求发送到TCP套接字。
  4. IP数据包包含HTTP请求,路由到www.google.com

    • IP数据包包含HTTP请求,通过局域网从客户端路由到第一跳路由器。
    • IP数据包从校园网络转发到Comcast网络,经由RIP、OSPF、IS-IS和/或BGP路由协议创建的表进行路由。
    • 最终到达DNS服务器。
  5. Web服务器响应HTTP回复(包含网页)

    • Web服务器回复HTTP SYNACK,TCP连接建立。
    • IP数据包包含HTTP回复,路由回到客户端。

    1.通过DHCP获取主机地址,BOB笔记本电脑的操作系统生成一个DHCP请求报文,并将该报文放入到目的端口67,原端口68的UDP报文段,该udp报文段则被放置在一个具有广播ip目的地址(255.255.255.255)和源ip地址0.0.0.0的ip数据报中,该数据报被放置在以太网帧中,该帧到源mac 地址为(自身mac地址)目的mac地址为(ff:ff:ff:ff:ff:ff)进行广播,路由器在它的具有mac 地址xx的接口接收到该广播帧,分离出DHCP请求报文,然后给其分配ip,DHCP服务器会产生一个包含ip地址,dn s服务器ip,子网掩码,默认网关ip的DHCP ACK报文,将其报文封装并放入以太网帧中以目的mac为bob主机mac,源mac为路由器接口mac发送给bob,bob收到该报文后,将自己的ip 地址,dns服务器ip记录下来,同时将默认网关的地址安装在ip转发表中

    2.通过DNS查询谷歌的IP地址,将含有DNS查询报文的数据报放入以太网帧中,为了获取网关路由器的MAC地址,将生成一个目的ip为(默认网关)的ARP查询报文,将该报文放置在一个具有广播地址(FF:FF:FF:FF:FF:FF) 的以太网帧中,发送该帧,网关路由器收到该帧后,将返回一个包含自身mac 地址的ARP回答报文,将其放在一个以太网帧中返回bob主机,从中抽取网关路由器的mac地址,随后可以将包含dns查询报文的帧发送到网关路由器,路由器根据最大前缀匹配原则,利用他的转发表将其送到dns服务器上,dns服务器抽取出dns查询报文,然后在他的dns数据库中查找名字为www.geogle.com,假设它缓存在dns服务器中,则可以找到包含www.geogle.com的ip地址的dns源记录,dns服务器则形成一个包含主机名到ip地址映射的dns回答报文,将报文封装进以太网帧中,发送到bob主机,bob从dns回答报文中提取谷歌的ip地址

    3.bob生成tcp套接字,随后开始进行tcp连接,首先生成一个具有目的端口80 的TCP SYN报文段,将该tcp报文段放置在具有目的ip地址(谷歌)的ip数据报中,将该数据报封装在mac地址(网关路由器)的帧中,利用路由器转发表将该数据报发送到www.geogle.com,从数据报中取出tcp syn报文并分解到与端口80想联系的欢迎套接字中,对于谷歌http服务器和bob主机之间的tcp连接生成一个连接套接字,产生一个tcp syn ack报文段,该报文段最终到达bob主机的以太网卡,将其分解到tcp套接字中,bob主机上的浏览器生成包含要获取的URL的http get报文,将该报文写入套接字中,get报文成为一个tcp报文段的载荷,将该报文段交付到www.geogle.com,www.geogle.com从tcp套接字中读取http get报文,生成一个包含请求的web页内容的响应报文,将该报文发送进tcp套接字中,包含http响应报文的数据报到达bob主机,bob主机上的web浏览器程序从套接字中读取http响应,从http响应体中抽取web页面的html,最后显示网页。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published