专栏首页IT 茂茂计算机网络 【速记宝典】

计算机网络 【速记宝典】

前言

今天的因特网无疑是有史以来由人类创造的、精心设计的最大系统、该系统由数以千计的计算机设备(计算机、平板电脑、智能手机)彼此相互连接构成,并且还有一批与因特网相互连接的物品比如游戏机、监控系统、汽车、医疗设备、智能眼镜、手表、运动手环等,随着5G时代的到来,万物互联也越来越称为可能,这里推荐一下 尤瓦尔·赫拉利 的《未来简史》,这个人的格局很高,他书中描述的未来也越来越成为现实,他写的文字能让你感觉到你更想变为计算机世界里的一片硅片。

但是,面对互联网如此巨大且迅速的变化,我们能做些什么?我在地铁站等车的时候经常被地铁广告洗脑,鼓吹人工智能发展的多么牛逼,鼓吹大家都成为人工智能的高端型人才,我不能否认这个操作,但是我认为人工智能并不适合每个人,而且人工智能需要的技术和知识储备是巨大的,所以,**与其憧憬成为人工智能的高端型人才,不如把眼下的计算机基础知识学好,你的未来才会有更多的可能性。**毕竟,一切计算力发展的源头都是计算机,也可以说现在互联网一切的衍生物都是计算机的儿子。

说到计算机基础,就不得不提计算机网络,就像人长大后是需要和外界进行交流一样,计算机网络也是计算机彼此通信的必要条件。如果计算机的创造好比新中国成立,那么计算机网络的出现就相当于是改革开放。并且计算机网络是每个软件工程师必须要学好的一门知识。扯了这么多,下面开始进入正题

计算机网络

  • 简单介绍:
    • 组成部分:硬件,软件,协议
    • 工作方式:边缘和核心
    • 功能组成:通信子网,资源子网
    • 局域网:广播技术;广域网:交换技术(点对点)
  • 计算机网络的分类:
    • 按传输技术:广播式网络,点对点网络
    • 按拓扑结构分类:星形网络,总线型网络,环形网络,网状形网络
    • 按数据交换技术分类:电路交换网络,报文交换网络,分组交换网络
  • 网络标准化:(non)
    • 标准化常见过程:因特网草案->建议标准->草案标准->因特网标准
    • 相关组织:ISO,ITU,IEEE
  • 网络体系结构:
    • 接口:有接口才能够提供服务
    • 常见分类:服务数据单元SDU,协议控制信息PCI,接口控制信息ICI,协议数据单元PDU
  • 对于“服务”的定义:
    • 只有能够被上一层级看得见的才能够称之为服务
  • TCP/IP和OS模型的显著区别:
    • TCP/IP有7层(多了数据链路层,网络层进行了细分:会话层和表示层),OSI有4层

应用层

  • 应用层的细分:
    • 会话层:点和点之间的建立,维护和进行释放
    • 表示层:数据格式的转换和压缩,便于不同设备进行通信
    • 应用层:主要是现成的接口
  • 网络应用模型:
  • C/S模型
  • P2P模型,应用如PPlive Bittorrent等
    • 优点:
    • 消除了对于服务器计算压力;
    • 多个客户机可以共享资源;
    • 可扩展性好
    • 网络健壮性強,单个结点失效不会影响其他部分结点

DNS系统

  • 层次域名空间:
    • 结构:三级域名:二级域名:顶级域名=www.google.com
    • 注意:不使用其他符号,除-;每一个部分字符不超过63个,整个不超过255个
  • 顶级域名分类Top Level Domain:
    • 国家顶级域名,如cn, uk,kr等
    • 通用域名,如gov,edu
    • 基础结构域名.这种域名只有一个,即apra
  • 域名解析过程:
    • 递归查询
      • 本地客户端->本地域名服务器->根域名服务器->顶级域名服务器->权限 域名服务器
  • 递归与迭代相互结合:
    • 本地客户端->本地域名服务器
      • 本地域名服务器->根域名服务器
      • 本地域名服务器->顶级域名服务器
      • 本地域名服务器->权限域名服务器

FTP协议

  • 工作步骤:
    • 打开端口21进行连接
    • 等待客户连接请求,20进行数据接受
  • 功能:
    • 以用户权限管理方式提供用户对远程FTP服务器上的文件管理功能;
    • 以匿名FTP的方式提供公用文件共享的能力;
    • 网络文件系统NSF(基于UDP),允许进程打开一个远程文件,并从特定位置开始读取;

电子邮件系统

  • 主要过程:
    • Send:SMTP->服务器25端口
    • Receive:POP3->接受端
  • SMTP与MIME的关系
    • MIME在SMTP,用户中间,负责转换非ASCII码

万维网

  • 内核:URL(统一资源定位符),HTTP(超文本传输协议),HTML(超文本标记语言)
  • HTTP协议:基于TCP,一般是端口80
  • 常用HTTP请求:GET,POST,PUT,DLETE

传输层(TCP,UDP)

常用设备:路由器

  • 主要功能:报文段TCP和用户数据段UDP;
    • 负责进程之间的通信
    • 为端到端提供流量控制,差错控制
    • 提供无连接或者面向连接的服务
  • 寻址:
    • 传输层是按端口进行寻址;
    • 数据链路层是按MAC地址寻址;
    • 网络侧是按IP进行寻址
  • 端口号的分类:
    • 熟知端口:0~2^10;
    • 登记端口2^10~3x(2^14),这类端口需要在IANA进行登记;
    • 客户端端口号3x2^14~2^16
  • 套接字(主机IP:端口号PORT):唯一标识了网络中的某台主机上的某个应用进程;

UDP(20B)

  • 主要特点:
    • 无需提前建立连接,也无需确认
    • 头部短,开销小,时间延迟短
    • 支持N:M的形式进行通信,通过在UDP的端口分发实现
  • UDP数据报和IP分组的区别(倒序观看):
    • 应用层报文
    • UDP数据报部分+UDP首部
    • IP数据报部分+IP首部
  • UDP报文段:
    • 组成格式:伪首部:源端口:目的端口:长度:校验和:12B:2B:2B:2B:2B
    • 分段的数据一般来说是小于512B
  • UDP校验:
    • 伪首部主要是用来进行校验和,不向上下两层传输
    • 校验常用算法:反码计算后为1正常,否则不正常,丢弃

TCP(80b)

  • TCP与网络层虚电路的区别:
    • TCP报文段中含有端到端的逻辑通信地址信息,对路由器不可见
    • 电路交换是在物理层的一种物理连接
    • 虚电路建立是在网络层的建立,不属于物理连接
  • 主要特点:
    • 面向连接,故不提供广播或多播的服务
    • 可靠的交付
    • 报文段头部长,开销大
  • TCP连接与释放:
    • TCP连接需要解决的问题
      • 客户端和服务端要通知对方的存在
      • 允许双方协商一些参数进行差错控制(如最大窗口值等)
      • 能够对运输实体资源进行约定(如:缓存大小,连接表中的项目等)
  • TCP连接过程:SYN(synchronous建立联机,建立后不再需要),Sequence number(顺序号码),ACK(acknowledgement 确认):
    • Client->Server:SYN=1,SEQ=X;
    • Server->Client: SYN=1,ACK=1,SEQ=y,ACK=x+1;
    • Client->Server: ACK=1,SEQ=X+1,ACK=X+1;
  • TCP释放过程:FIN(finish结束)
    • 前两步关闭Client->Server,后两步关闭Server->Client
    • Client->Server: FIN=1,SEQ=u;
    • Server->Client: ACK=1,SEQ=v,ACK=u+1;
    • Server->Client: FIN=1,ACK=1,SEQ=w,ACK=u+1;等待2MSL
    • Client->Server: ACK=1,SEQ=u+1,ACK=w(U+1)+1;

TCP实现可靠传输的机制:超时,冗余ACK

  • 超时:
  • new RTTs=(1-a)x old RTTs +a x (new RTTo)
  • RTO(超时重传时间)=RTTs+4 x RTTd
  • RTTd是RTT的加权平均值
    • 第一次为1/2 RTTo;
    • 非第一次,new RTTd = (1-p)x old RTTd+ (p)(RTTs-new RTTo),p的值推荐为0.25
  • 冗余ACK:回传3个A,表示希望收到 A+1:
    • 例:A->B:1,2,3,4,5->1,3,4,5 ;
      • 2号丢失无法抵达:B->A:1,1,1->1,1,1

TCP拥塞控制

  • 流量控制与数据链路层区别:
    • 传输层是端到端,数据链路层是相邻结点
  • 拥塞控制和流量控制的区别:
    • 拥塞控制是指整体网络能够承受的负荷
    • 流量控制更强调端口与端口之间来得及接受
  • Max s wnd(发送端最大数据量)=Min[rwnd,cwnd]
  • 拥塞控制相关算法:
    • 慢开始和拥塞避免
      • 慢开始算法:
        • cwnd= (primary cwnd )^2;
        • 每经过一个RTT后,A收到B的确认,于是下一个窗口调整为4;
    • 拥塞避免算法:ssthresh最大拥塞数量的一半
      • cwnd<ssthresh:使用慢开始算法
      • cwnd=ssthresh:2种算法都可以
      • cwnd>ssthresh: 使用拥塞避免算法,线性增加cwnd=old cwnd+k
  • 快重传和快恢复:
    • 快重传不是取消计时,而是更早的重传丢失报文
    • 连续3个冗余ACK时,直接重传,不必等待计时
    • 快恢复定义:当cwnd达到最大值时,从0执行慢开始算法
    • 冗余是慢上升,超时才是重开始

网络层(IP,ARP)

  • 常用设备:路由器
  • 交换机(数据链路层)与路由器区别:交换机之间是同一网络,路由器之间可以不同网络;
  • 主要功能:进行异构网络互联,拥有对风暴的控制能力,进行路由转发;
    • 拥塞控制,进行路由选择的能力
    • 将传输层的报文段分组成数据
  • “尽最大努力交付”的含义?
    • 不保证一定无差错交付;
    • 不保证在某一规定时间内交付;
    • 不保证按发送时的顺序交付;
    • 不故意丢弃IP数据报,用首部校验和进行确保安全性;
    • 不会重复交付;
  • 路由与转发:
    • 路由选择
      • 数据报,每一个分组都进行重新选择;
      • 虚电路,一直使用同一个路径直到转发完成;
  • 分组转发:
    • 路由器根据转发表将数据转发出去
    • 转发表:使得查找过程最优;
    • 路由表:需要对网络变化的计算最优
  • 拥塞控制:
    • 主要:确保能够传送的数据是全局性的问题,涉及所有主机和路由器等因素
    • 开环控制:事先考虑到拥塞的各种因素,使得尽量不要出现;
    • 闭环控制:事先不考虑拥塞因素,采用监视系统去监视系统的拥塞状况并进行调整
  • 路由算法:
    • 静态路由:非自适应路由选择,一般手动配置,如NAT转换协议(传输层)
    • 动态路由
      • 距离-向量路由算法,常见如RIP,RIP采用跳数作为距离量度
        • 1.每条路径的目的地
        • 2.路径的代价
      • 链路状态路由算法,典型如OSPF算法
        • 1.在本域内中所有路由器发送信息,采用泛洪法,即路由通过所有输出端口向所有相邻的路由器发送信息;
        • 2.发送的信息到相邻路由,“链路状态”就是指费用,距离,时延,带宽;
        • 3.只有链路状态发生改变,才用泛洪法向所有路由发送信息
  • 层次路由及路由选择协议:
    • 域内路由,即内部网关协议IGP
    • RIP
      • RIP三要点
        • 1.只和路由器交换消息
        • 2.交换全部消息,即路由表
        • 3.固定时间(如30s)进行交换
      • RIP选择的路径不是最短的,但一定是转发次数最少的
      • RIP报文最大长度(受制于UDP最大报文512B):4B+25x20B=504B,前4B是首部,后是路由信息
      • 优点:实现简单,开销小,收敛过程快;
      • 缺点:
        • RIP最大跳数为15(16表示不可达),限制了网络规模
        • 路由信息是转发全部,会随着网络整体规模呈现指数上升
        • 网络出现故障时,更新速度过慢
  • OSPF
    • 基于Dijsktra算法进行计算路由
    • 在上层区域用作骨干区域,以连接其他下层域。一般标识符规定为0,0,0,0;
    • 每一个区域都至少有一个区域边界路由器;
    • 在骨干区域也有一个路由器,实现与其他路由的交换。分层划分增加了交换信息的种类,同时OSPF变得更为复杂,但降低了路由的通信量。
    • OSPF适合大规模的自治系统
  • 五种分组类型(OSPF按不同类型进行不同传递):
    • 1.问候分组
    • 2.数据库描述分组
    • 3.链路状态请求分组
    • 4.链路状态更新分组
    • 5.链路状态确认分组
  • 域间路由BGP,即外部网关协议EGP:
  • BGP4种报文:
    • 打开报文Open
    • 更新报文Update
    • 保活报文keepalive
    • 通知报文Notification

IPV4分组:4x8

  • IPV4分组形式:
    • 标识(版本:首部长度:区分服务):总长度(标志:片偏移)=(4:4:8):(3:13)
    • 首部校验和占16位;生存时间TTL占8位,协议占8位
    • 在首部中关于长度的标记:首部长度4B,总长度2B,片偏移8B
  • 最大传送单元:
    • 一个链路层数据报的最大数据量;
    • 以太网的MTU为1500字节,广域网一般不超过567字节
  • MF和DF(More Fragment和Dont Fragment):
    • 是ip首部标志位3B里面有意义的2B
    • DF=0,IP数据报才可以被分片
    • MF=0, 表示数据报是相应原始数据报的最后一个片
    • MF=1,表示相应的原始数据报还有后片
  • IPV4地址划分:
    • A类:1.0.0.0~126.255.255.255(2^7-1)
    • B类: 128.1.0.0~191.255.255.255 (2^7+2^6-1)
    • C类:192.0.0.0~223.255.255.255(2^7+2^6+2^5-1)
    • D类:224.0.0.0~239.255.255.255(2^7+2^6+2^5+2^4-1)
    • E类: 240.0.0.0~254.255.255.255(2^7+2^6+2^5+2^4+2^3+2^2+2^1+2^0-1);
    • 其中127.0.0.0~127.255.255.255用于环回测试,D类组播,E类科研
  • 私有地址:
    • A类:10.0.0.0~10.255.255.255.255 1个段
    • B类: 172.16.0.0~173.31.255.255 16个段
    • C类:192.168.0.0~192.168.255.255 256个段 这也是为什么一般路由器的私有地址是192.168网段
  • 特殊地址:全1,本网广播地址:
    • 网络地址转换NAT:通过专用网络将内部IP地址转换为外部IP地址;内部IP只用LAN,外部使用WAN,有效解决了IP地址不足的问题

子网划分

  • 子网掩码:
    • 将IP与子网掩码与运算=真实IP地址
  • CIDR:
    • 为解决IP地址耗尽而提出的一种措施
    • IP地址={网络前缀:主机号}
    • 一般采用最长前缀匹配,常用的数据结构是二叉线索树
  • DNS作用:
    • 将域名解析成ip地址
    • 网络通讯大部分是基于TCP/IP的,而TCP/IP是基于IP地址的,所以计算机在网络上进行通讯时只能识别如“202.96.134.133”之类的IP地址,而不能认识域名。
    • 我们无法记住10个以上IP地址的网站,所以我们访问网站时,更多的是在浏览器地址栏中输入域名,就能看到所需要的页面,
    • 这是因为有一个叫“DNS服务器”的计算机自动把我们的域名“翻译”成了相应的IP地址,然后调出IP地址所对应的网页。
  • dns域名解析大致过程如图
    • 浏览器先检查本地缓存,如果有,解析结束。
    • 然后查询本地 "C:\Windows\System32\drivers\etc\hosts" hosts记录,如果有,解析结束。
    • 如果任然没有命中,才会去查询网络中配置的dns服务器,比如上图中的 8.8.8.8。
  • ARP协议:
    • 在同一个路由系统内,通过IP找到相应的硬件MAC地址的协议;
    • ARP是网络层,NAT在传输层
  • 什么是ARP协议?
    • ARP作用: 实质是一张表,存放 IP地址转换为MAC地址对应关系
    • 网络设备有数据要发送给另一台网络设备时,必须要知道对方的网络层地址(即IP地址)。
    • IP地址由网络层来提供,但是仅有IP地址是不够的,IP数据报文必须封装成帧才能通过数据链路进行发送。
    • 数据帧必须要包含目的MAC地址,因此发送端还必须获取到目的MAC地址。
  • 2.查看本地ARP缓存:
3.ARP协议原理:
    • ARP协议工作在数据链路层,也就是我们我们的二层交换机那一层
    • 比如我的电脑ip 是 192.168.1.100 要与 192.168.1.1 通信,但是二层设备无法通过ip地址访问,只认识  MAC地址
    • 此时我的电脑就会发送 ARP广播报文,所有连接到这台交换机的主机都能收到: “谁是 192.168.1.1 请回话给 192.168.1.100”
ARP报文格式
  • 使用Wireshark抓取ARP报文:

DHCP协议

  • DHCP协议(基于UDP应用层协议)
    • DHCP客户端->DHCP服务端:客户端广播DHCP discover消息
    • DHCP服务端->DHCP客户端:服务器提供地址租约offer
    • DHCP客户端->DHCP服务端:客户端选择并请求地址租用
    • DHCP服务端->DHCP客户端:服务器确认将地址租用给客户端
  • DNS作用
    • DHCP(动态主机配置协议)是一个局域网的网络协议,常被应用在大型的局域网络环境中。
    • 指的是由服务器控制一段lP地址范围,客户机登录服务器时就可以自动获得服务器分配的lP地址和子网掩码。
  • 2.DHCP原理简析
    • 目的:DHCP客户端以广播的形式发送Discover包(主机并不知道DHCP的服务器的位置)
    • 发送者:源ip是0.0.0.0
    • 发送方式:目标ip是255.255.255.255,也就是网段内所有安装了TCP/IP协议的主机/服务器
    • 响应者:DHCP服务器会分配ip给

ICMP协议

  • 功能:
    • 确认IP包是否成功到达目的地址
    • 通知在发送过程中IP包被丢弃的原因
  • 五种差错类型:
    • 1.终点不可达
    • 2.源点抑制
    • 3.时间超过
    • 4.参数问题
    • 5.改变路由
  • 询问四种类型:
    • 回送请求和回答报文
    • 时间戳请求和回答报文
    • 时间戳请求和回答报文
    • 掩码地址请求和回答报文
    • 路由器和通告报文
  • PING协议(基于网络层ICMP协议直接封装的应用层协议,未使用传输层协议)
  • IPV6
    • 基本格式:将原先的32位扩充到128位,8组,每组4个16(2^4)进制数
    • IPV6首部是8B(8x8),IPV4首部是4B(4x8)
    • 3种地址类型:单播地址,组播地址,任播
      • 单播:优先点对点;
      • 组播:数据包交付到一组计算机中;
      • 任播:目的地址是一组主机,交付时只交付给其中一个;
  • 移动IP
    • 分为:移动结点,归属代理和外阜代理(移动代理)
    • 移动结点:具有永久IP地址的移动结点
    • 本地代理:一个移动结点归属的网络
    • 外部代理:在外部网络中完成移动管理功能的实体
  • 实现移动IP的技术?
    • 代理搜索,判断是否漫游;
    • 申请转交地址
    • 登录
    • 建立隧道
  • 移动IP通信特点:每移动更新一个基站就更新转交地址(辅地址),但主地址不会改变。
  • 路由器中的输入输出产生溢出是造成分组丢失的重要原因

数据链路层(MAC,LLC)

  • 数据链路层以上的设备可以隔离冲突域,传输层以上可以隔离广播域
  • 常用设备:交换机,网桥
    • 网桥
      • 透明网桥:
        • 选择的不是最佳路由
        • 网桥在收到一个帧后无进行自学习,然后增加一个项目
        • 源LAN和目的LAN相同,丢弃
        • 源LAN和目的LAN不同,转发
        • 目的LAN未知,扩散
  • 源路由网桥:
    • 选择的是最佳路由
    • 源路由对于主机是不透明的
    • 使用应答帧和发送帧来确定网络的最佳路由
  • 存储转发交换模式
  • 交换机
    • 实质:多端口网桥,并且使宽带速率不下降
    • 总容量计算方式:
      • 全双工 端口数x带宽数
      • 半双工 1/2x 端口数x带宽数
  • 交换模式:直通交换和存储转发交换
    • 直通交换
      • 只检查帧的目的地址,但缺乏智能性和安全性
    • 存储转发交换
      • 检查数据是否正确,确认无误后通过查找表转换输出端口将帧发送出去
  • 主要功能:
    • 为网络层提供服务
    • 将IP数据报组装成帧
    • 具备差错校验,流量控制,成帧
  • 提供的主要服务:
    • 有确认,无确认的无连接服务
    • 有确认的面向连接的服务
  • 4种组帧的方法:
    • 字符计数法
      • 首字段用一个计数字段来表明该帧的字节数
      • 首4个字符,尾5个字符
      • 计数字节提供的字节数保护你自身所占的一个字节
      • 如果计数在传输中出现差错,接收方就无法判断所传输的帧的接收位
  • 首尾定界法:
    • 开始DLE STX;结束DLE ETX
  • 过程:
    • 1.网络层发出的数据 DLE STX |A DLE B| DLE ETX
    • 2.经数据链路层填充后的数据 DLE STX | A DLE DLE B|DLE ETX
    • 3.接收方传送的网络 DLE STX | A DLE B|DLE ETX
  • 比特填充的首尾标志法:
    • 典型的连续5个1则加0
    • 1.原始数据:111111
    • 2.零比特进行填充后 1111101
    • 3.接收方收到数据后,一旦遇到5个连续1就去掉后面的0
  • 物理编码法(IEE802采用此标准):
    • 利用物理介质上的违法标志来区分帧的开始和结束
  • PPP用来进行帧界定的字段为OXTE
  • Mac帧在首尾界定法时不需要开始帧和结束帧来进行区分
  • 差错控制:
    • 奇偶校验
    • 循环冗余码(异或校验)
  • 纠错编码:海明码
  • 流量控制与可靠传输:
    • 自动重传请求ARQ,传统ARQ分为停止等待,后退N帧,选择重传三种方式
      • 停止-等待协议
        • 发送=1,接收=1,如果接收方不返回应答,则发送方必须一直等待
    • 滑动窗口流量控制
      • 后退N帧GBN,累计确认
      • 选择重传,不按序接受,非累计
    • 可靠传输机制:确认,超时重传两种机制
  • 信道吞吐率=信道利用率x发送方的发送速率
  • 介质访问控制:
    • 信道
      • 时分
      • 频分
      • 波分
      • 码分
  • 随机和轮询是动态分配信道的方法:
    • 随机协议
      • ALOHA协议
      • 当需要发送时,不进行任何检测就发送数据;
      • 如果一段时间内没有收到确认,该结点就认为传输过程中发生了冲突
      • 缺点:信道利用率低
  • CSMA协议
    • 即共享信道频率又共享时间,是一种真正的动态复用技术
    • 任意两个不同站的码片向量正交一定为0,表示没有发送数据
    • 任意站点的码片向量与改码片的规格内积化为1,表示发送了1比特数据
    • 内积化为-1,表示接受了比特数
    • 码分多路复用具有抗干扰能力强,保密性強,语言质量优等优点,这可以减少投资和运行成本。主要用于无线通信系统,特别是移动通信系统
    • 三种策略:
      • l-坚持CMSA
        • 当发送结点监听到信道空闲时,立即发送数据,否则继续监听
      • P-坚持CSMA
        • 以概率p发送数据;在概率1-p时不进行发送
      • 非坚持CSMA
        • 与l不同的是,会延迟一段时间进行监听
  • CSMD协议 :半双工
    • 半双工工作在同一信道,所以肯定用CSMA/CD冲突检测协议
  • CSMA/CD协议
    • 带冲突检测的载波帧听多路访问协议
    • 解决问题的方法:CSMA机制中多个传送造成冲突,但是即使是冲突了。CSMA也要将帧发送完,但总线的利用率整体上降低
    • 在发送前:检测总线上是否有其他设备在发送数据;若有,则不发送计算机,若没有,则进行发送数据。
  • 在发送时:如果产生冲突,采用截断二进制指数类型退避算法;
    • 截断二进制指数类型退避算法
    • 特点:先听后发,边听边发,冲突停发,随机重发
    • 发生碰撞在停止发送数据后,需要推迟一个随机时间才能发送数,退避的时间按照以下算法计算:
    • 1.确定基本退避时间,一般取争用期2t
    • 2.定义重传参数k,k=Min[重传次数,10].可见。
      • 当重传次数不超过10时,参数k等于重传次数;
      • 当重传次数超过10时,k就不再增大而一直等于10;
    • 3.从整数集合{0,1,.....,2^k-1}中随机选择一个数记为r,重传所需时延就是r信的基本退避时间。即2rt
    • 4.当重传次数达到16b仍然不能成功的时候,说明网络太拥挤,直接丢弃帧,并向高层报告。
  • 设置最大和最小帧长的原因?
    • 最小帧:区分噪声和因发生碰撞而异常终止的短帧;
    • 最大帧:保证每个站点能够公平竞争到以太网;因为如果某个站发送特别长的帧,那 其他帧就必须等待很长时间才能发送数据
    • <64b的帧都是由于冲突而异常无效的帧;发送小于64b,以太网会将其加长至最小64b的帧
  • 无法应用于WIFI的原因:
    • 1.接收信号强度往往会小于发送信号的强度,且在无线介质上信号强度动态变化范围很少,因此,碰撞检测必须在硬件上花费更大
    • 2.无线通信中,并非所有的站点都能够听见对方,即“隐蔽站”的问题。IEEE802.11标准进行定义
  • CSMA/CA协议 全双工:
    • 全双工通信不需要CSMA/CD冲突检测机制
    • 主要用于无线环境
    • 三种碰撞避免机制:预约信道,ACK帧,RTS/CTS帧
      • 预约信道:提前通知自己传输数据需要的时间长度;
      • ACK帧:收到数据帧后,回传一个ACK,如果未收到这代表失败,类似于TCP;
      • ATS/CTS帧:是可选的碰撞避免机制,主要用于解决无线网中的隐蔽站问题;
  • CSMA/CD与CSMA/CA对比:
    • 冲突区别:CSMA/CD可以检测冲突但无法避免,CSMA/CA直接不提供检测冲突
    • 传输介质不同:CSMA/CD作用于以太网,CSMA/CA主要用于无线局域网,IEEE802.11 a/b/n等
    • 检测方式不同:CSMA/CD主要通过电缆中电压的变化来检测,CSMA/CA使用能量检测,载波检测,能量载波,混合检测三种检测信道的空闲方式
    • CSMA/CD发送前监听,边发送边监听,一旦碰撞马上停止发送;CSMA/CA是在发送前告知,让其他结点暂时不发送,来避免碰撞。
  • 轮询协议:令牌传递
    • 令牌:一组特殊的比特组合而成的帧,帧中包含目的地址
    • 轮询访问非常适合高负载的广播信道。因为令牌环网采用各种轮流使用令牌发送数据,无论负载如何,都没有冲突产生。

局域网

  • 主要介质:双绞线,UTP5类以上的线支持所有
  • 介质访问控制方法:CSMA/CD,令牌总线都作用于总线型网,令牌环主要作用于环形网
  • 拓步结构:星形,环形,总线形,树形
  • 以太网:
    • 工作原理:
      • 采用无连接的服务
      • 不对数据进行编号和确认
      • 只提供尽最大努力交付的不可靠服务,差错的纠正主要依靠传输层的TCP
    • MAC帧固化在ROM中
      • 6B(48位)
      • 高3位为为厂商代码,最后24到3位为厂商自行分配的网卡序号
    • 数据链路层上帧即加首部地址,也加尾部地址(MAC)
    • 插入字节:目的地址:源地址:类型:IP数据报:FCS校验=8:6:6:2:(1500-46):4
      • 首部插入8,使得接受端和发送端进行时钟同步
    • 802.3帧格式与DIX以太帧格式的不同之处
      • 帧起始标志法:与802.4和802.5相兼容
      • 长度城:替代3DIX帧中的类型域,指出数据域的长度
    • 高速以太网
      • 10base-T:CSMA/CD半双工;全双工
      • 吉比特:允许1G bit/s下全双工和半双工两种工作方式;CSMA/CD仍然半双工
  • 无线局域网:
  • 有固定基础设施
    • IEEE 802.11标准规定最小构件为基本服务集,因此,BSS中的基站为接入点(AP)
    • 一个服务集可以是孤立的,也可以通过接入主干分配系统DS,然后接入到另一个基本服务框架,构出扩展的服务集(Extended Service Set,ESS)
  • 无固定基础设施
    • 无上诉基础服务的集中接入点,而是由于一些处于平等状态的移动站之间相互通信组成的临时网络。
    • 这些移动站也具有路由器的功能
  • IEEE 802.11标准中的物理层
    •   跳频扩频FHSS
    •   直接序列扩频DSS
    •   红外线IR
  • IEEE 802.11标准中的MAC
    •   分布协调功能DCF
    •   点协调功能PCF
  • IEEE 802.11在CSMA/CA上增加确认子层
  • 令牌环网:一种特殊的MAC帧
    • 基本原理:以IBM的TOKEN Ring为例
      • 1.当网络空闲时,环路中只有令牌环传递
      • 2.有数据到达站点时,该站点修改令牌中的一个标志位,并在令牌中附加数据,这样令牌变成了一个数据帧
      • 3.沿着环路进行传输,校验,有错误就重传
      • 4.传递完数据后重新产生一个令牌进入下一段

广域网

  • 广域网不能够使用广播通信,而应该使用点对点通信,使用交换机转发
  • 广域网强调资源共享,局域网强调数据传输;
  • 广域网在OSI上有,物理,数据链路,网络三层,局域网缺少网络层
  • HDLC:
    •   两种基本配置:
      • 平衡配置:链路两端都是复合站,每个复合站都可以平等的数据传输而不需要得到对方复合站的允许
      • 非平衡配置:一个主站控制整个链路的工作
    • 3种类型:主站,从站,复合站
    • 3种数据操作方式:正常响应,异步平衡方式,异步响应方式
    • 正常响应:非平衡结构的。主站->从站,从站需要确认才能响应;
    • 异步平衡方式:任一一个复合站都可以进行对另一战的数据传输
    • 异步响应方式:非平衡,主站确认才能进行传输
  • HDLC信息帧使用了编号和确认机制,能够提供可靠传输
  • PPP:
    • 为改进SLIP无法寻址,数据校验,分组类型且只能传递IP分组的现状,制定了PPP协议
    • 是一个面向字节的协议
    • PPP仅仅保证点对点的通信,支持全双工
    • 组成部分:
      • 链路控制协议LCP:用于建立,配置,测试和管理数据网络
      • 网络控制协议NCP:允许同时采用多路网络协议,每个不同的网络要采用相应的NCP进行配置
    • 提供端到端的传输,检测由高层协议控制,如工作在传输层的socket
    • LLC(逻辑链路控制)
    • MAC(媒体地址控制):802协议中只有MAC
  • 物理层(模拟信号,数字信号,串行传输,并行传输,单工通信,半双工通信,双工通信)
    • 主要任务:透明的传输比特流,并为数据端设备提供数据通路
    • 常用设备:网卡,中继器,集线器
    • 中继器:将信号整理放大再转发,遵循5-4-3规则,4个中继器的5段信号介质,只可以挂载3个主机
    • 集线器,解决物理口过少的问题,只能工作在半双工网络
  • 传输介质:
    • 无线:无线电波,微波,红外线和激光
    • 有线:双绞线,同轴电缆,光纤
  • 传输方式:并行传输和串行传输
    • 并行传输:距离短,速度快
    • 串行传输:距离长,速度慢
  • 通信方式:同步通信和异步通信
  • 通信基础
    • 数据和信号
      • 数据是传送信息的实体,且取值一般是固定的几个值如0,1
      • 信号是数据的电气和电磁表现,是连续变化的
      • 信道和电路并不等同,信道是信号的传输介质
    • 码元是一个固定时长的脉冲信号,因此是数字信号;
    • 码元传输速率:单位时间,数字通信传输的码元个数。单位波特Baud
    • 信息传输速率:单位时间,数字通信传输的二进制个数,即比特数。单位b/s
    • 若一个码元携带nbit信息,M Baud的码元传输速率对应的信息传输速率是mxn bit/s
    • C=B log L;C表示比特率,B是码元,L是离散值
    • 在模拟信号中,带宽=高频-低频
  • Nyquist定理:
    • V=2w log I;其中w表示带宽,I表示级数,一般I=mxn,m表示种类,n表示方式种类
  • Shannon公式:
    • V=W log(1+S/N) ;
    • w为信道带宽,S为信道所传输信号的平均功率,N为信道内部的高斯噪声比;
    • 例:信躁比=10 log10/(S/N) ;
    • S/N等于10时,信噪比为10db,S/N等于1000时,信躁比为30db
    • Shannon从另一个侧面上反应了一个码元所对应的二进制数量是有限的
  • 通信方式:单工,半双工(CSMA/CD),全双工(CSMA/CA)
  • 编码与调制
    • 数字数据->数字信号:
      • 1.非归零码NRZ
        • 低电频表示0,高电频表示1
        • 容易实现,无检错,无法判断开始
      • 2.曼彻斯特码 Manchester Encoding
        • 以太网的主要传输方式
        • 高电频->低电频(下降):0
        • 低电频->高电频(上升):1
      • 3.差分曼彻斯特码
        • 主要用于局域网传输
        • 可实现同步且抗干扰能力强
        • 前半个码元与上后半个相同,表示1
        • 前半个码元与上后半个不同,表示0
      • 4.4B/5B编码
  • 数字数据->模拟信号:分别通过改变幅移,频移,相移来表示0和1
    • 1.幅移键控:ASK
    • 2.频移键控:FSK
    • 3.相移键控:PSS
    • 4.正交振幅调制:QSK,在频率相同的条件下,将ASK和PSK相结合
  • 模拟数据->数字信号:
    • 脉冲调制PCM
      • 在采样定理中,f采样>=2f(max)
    • 调制过程:
      • 抽样->量化->编码
  • 模拟数据->模拟信号:
    • 时分TDM
    • 频分FDM
    • 波分WDM
    • 码分CDM
  • 数据交换方式:
    • 电路交换
      • 优点:时间延迟小,有效传输,无冲突,有序到达,简单易控制
      • 缺点:连接时间长,线路独占,效率低,灵活性差,难以规格化
    •   报文交换
      • 优点:无需建立连接,动态分配,提高可靠性和利用率
      • 缺点:无大小限制,需要大缓存,会计算往返时间,类似TCP
  • 分组交换:
    • 优点:无建立时间延迟,线路利用率高,简化了存储管理,加速传输,减少出错机率和重发数量
    • 缺点:存在传输时延,需要额外的信息量,分组交换采用数据服务,时间先后顺序不一致,会出现丢失和重发
  • 数据报与虚电路的区别:类似UDP与TCP
    • 数据报建立不需要建立连接,虚电路必须有
    • 数据报不保证分组有序到达,虚电路保证
    • 数据报传输过程中出现故障不会影响分组数据,虚电路会阻塞

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python 【面试总结】

    https://blog.kido.site/2018/12/01/db-and-cache-01/

    IT茂茂
  • 博客园 【装饰目录、回到顶部】

    IT茂茂
  • 公钥私钥的那点事儿

    生成秘钥参考官网:https://docs.open.alipay.com/291/105971

    IT茂茂
  • 创业者注意了!大数据教你如何在众筹网站上成功融资

    有好点子,想创业,但没钱,怎么办?Kickstarter是美国著名的众筹网站,在这里可以帮有好点子的创业者实现梦想!本文数据侠抓取了Kickstarter的众筹...

    DT数据侠
  • 关于数据可视化图表的制作,你需要关注的30个小技巧

    优秀的数据可视化图表只是罗列、总结数据吗?当然不是!数据可视化其真正的价值是设计出可以被读者轻松理解的数据展示,因此在设计过程中,每一个选择,最终都应落脚于读者...

    CDA数据分析师
  • 弈聪软件卓建超:大数据将是未来传统实体经济创新发展的基础

    大数据时代,传统的实体经济模型已经过时。以大数据塑造未来经济,以此形成的数据经济才是真正的实体经济。随着大数据落地的不断深入,越来越多的企业意识到数据的价值。然...

    西安弈聪软件公司
  • 大数据24小时 | IBM成立土壤环境大数据实验室,慧聪与海致合作实现B2B与大数据深度融合

    <数据猿导读> LogMeIn拟18亿美元收购Citrix旗下GoTo业务,年收益超10亿美元;美国基因测序公司Phosphorus完成1000万美元融资;IB...

    数据猿
  • 大数据的威力,它可能知道你何时在啪啪啪。

    海量数据的威力 人们在形容一个事物非常大或者非常多的时候,往往喜欢用“海量”这个词,比如说某某某的酒量很大就称其为海量,所以在形容数据量非常大的时候,就有了“海...

    用户1310347
  • 猎聘网单艺:数据分析师的9大挑战

    报告正文: 大家好,我是来自猎聘网的单艺,很高兴今天下午能够有机会跟大家聊一聊我们做数据分析在这个大数据时代会面临的哪些机会和挑战。我演讲的主题是数据分析师的十...

    CDA数据分析师
  • java程序员5个月业余时间学习大数据路径

    我自己建的大数据学习交流群:199427210,群里都是学大数据开发的,如果你正在学习大数据 ,小编欢迎你加入,大家都是软件开发党,不定期分享干货(只有大数据软...

    用户2292346

扫码关注云+社区

领取腾讯云代金券