计算机网络抱佛脚自用

https://www.runoob.com/w3cnote/summary-of-network.html

图片说明

计算机网络

edge and core

  • 网络边缘:主机上的应用程序(Client-Server/Peer-to-peer)
  • 网络核心:路由器

交换方法

  • circuit switching; message switching(不考虑); packet-switching
    图片说明

    电路交换

  • dedicated resource 资源专用
  • 最大特点: 独占线路. 这样可以保证性能, 但别人想来就占线了, 因此要记得断开连接. 一定程度不公平.
  • 为了增加效率,使用TDM,FDM 等partition
  • 需要首先建立 circuit: 因此是一种面向连接的服务
  • 不需要header
  • 面向连接: 只适合点对点通信, 不适合多点通信
  • Establish, Transfer, Teardown.
    图片说明

分组交换

  • 目前用的最多
  • 数据流 -> 分成数据端 + header + tail -> package
  • 不partition,一个包用全部带宽,本质上是一种按需分配(statistical Multiplexing)独占带宽的TDM
  • 核心技术: store and forward 存储转发技术
  • 没有占线问题,但buffer一旦用完,会出现 丢包/溢出/重新传输等问题

    数据报分组交换

    虚电路分组交换

  • routers maintain per-call state

物理层

  • 编码,解码,调制,解调
  • 各种编码方式(归零,不归零,曼彻斯特)
  • 各种调制方式(调频,调幅,调相)
  • 借道复用(FDM,TDM,WDM,CDM)

数据链路层

图片说明

  • 作用:传输可靠数据帧;访问共享信道
  • 信道类型:点到点;广播信道

    点到点信道

    组帧+差错控制

  • 为了可靠,将比特流拆分成离散的帧,为每个帧计算一个称为校验和的短令牌
  • 主流拆分方法:字节填充的标志字节法;比特填充的标志比特法;物理层违禁编码法
  • 差错控制:纠错码(海明码);检错码(奇偶校验,校验和,循环冗余校验CRC);超时计时器

停等协议

  • 收到接收方确认帧后,才发下一个数据帧
  • 超时重发
  • 使用序号避免重复接收一个帧(0,1两个即可)
  • 双工方法:
    1. 两条链路单工运行
    2. 只用一条链路,通过kind区分数据帧和确认帧
    3. 捎带确认 piggybacking

      滑动窗口协议

  • 在任何时刻,发送方总是维持着一组序号,接收方也维持着一组序号,大小不定。
  • 管道化
    • 最大窗口为 2BD+1
    • 窗口的最大尺寸不应超过序号空间的一半
  • 为了处理中途出错:
    1. go-back-n(接收方窗口=1);
    2. SR 选择重传(接收方窗口>1)
  • 可以引入NAK在超时前就触发重传
    图片说明
  • 使用累计确认减少需要发送的ack数目

效率比较

  • 停止等待协议(stop-and-wait)
    就是每发送完一个分组就停止发送,等待对方的确认。在收到确认后再发送下一个分组。
  • 回退n帧的ARQ
    也叫做GBN,发信侧不用等待收信侧的应答,持续的发送多个帧,假如发现已发送的帧中有错误发生,那么从那个发生错误的帧开始及其之后所有的帧全部再重新发送。复杂度低,但是不必要的帧会再重发,所以大幅度范围内使用的话效率是不高的
  • 选择性重传ARQ
    发信侧不用等待收信侧的应答,持续的发送多个帧,假如发现已发送的帧中有错误发生,那么发信侧将只重新发送那个发生错误的帧。
    特点:相对于GDN 复杂度高,但是不需要发送没必要的帧,所以效率高。
    所以信道利用率最高的是 选择性重传ARQ > 回退n帧的GBN > 停止等待协议(stop-and-wait)

MAC子层

介质访问控制策略

  • 局域网中目前广泛采用两种介质访问控制策略,第一种是争用型介质访问控制,又称随机型介质访问控制,如CSMA/CD;第二种是确定型介质访问控制,又称有序的介质访问控制,如Token(令牌)方式;
  • 在无线局域网中,介质访问控制策略工作方式为DCF(分布控制)和PCF(中心控制)

    经典以太网MAC子层协议

    图片说明
    MAC地址,or 硬件地址/物理地址,长度是48比特(6字节)(每个字节之间的分隔符并没有严格要求 可以说冒号 or 减号),由16进制的数字组成。

    最小帧长限制的原因

    二进制指数后退的 CSMA/CD

    图片说明

    交换式以太网

  • 改进:单根线缆 => 集线器 hub
  • 然而逻辑上仍然是同一个冲突域。改进:交换机 Switch
  • 传统以太网(10Mbps),快速以太网(100Mbps),千兆以太网(1000Mbps),万兆以太网(10000Mbps)帧结构完全相同,且最小帧长均为64B,最大帧长均为1518B
    图片说明
  • 拓扑结构
    • 普通以太网:总线型;
    • 快速以太网:星型。(快速是指100Mbps及其以上)

      集线器

      不能识别MAC地址。
      集线器不管有多少个端口,所有端口都共享一条带宽,在同一时刻只能有两个端口传送数据,其他端口只能等待;只能工作在半双工模式下。

      交换机

      冲突域是第一层物理层的概念,用第二层及其以上的设备才可以分离冲突域;
      广播域是第二层数据链路层的概念,用第三层及其以上的设备才可以分离广播域。
      交换机属于第二层的设备,所以 可以分离冲突域,但不能分离广播域
      无划分vlan下,交换机所有接口属于同一个广播域;划分vlan下,每个vlan属于一个广播域。
      交换机每个端口都有一条独占的带宽,当两个端口工作时并不影响其他端口的工作,交换机可以工作在半双工模式下也可以工作在全双工模式下。

网络层

  • 功能:路由+转发,实现网络主机之间点到点互联
  • 服务:虚电路(ATM, X.25);数据报(IP)
  • IP: 提供的是一种无连接、不可靠但尽力而为的数据报传输服务,将数据报从原主机传送到目的主机。
  • 其他协议:ICMP(通常被认为是IP层的一部分,Internet控制报文协议);ARP;RARP

    IP地址

  • IP地址:32位,全球唯一,具有层次性
  • IP地址=网络号+主机号
    图片说明
    图片说明
  • 无类域间IP地址(CIDR地址):主要用于防止路由表爆炸,应用路由聚合思想
    图片说明
  • 多接口主机:同时连接到多个网络,有多个IP地址的主机
  • 由中继器、网桥、交换机连接的网络属于同一LAN,网络号相同

    分类法IP地址

    图片说明
    有效性:
    A类: 1.0 -- 127
    B类: 128.0 --- 191
    C类: 192.0 --- 223
    私有:
    A类: 10.~
    B类: 172.16 --- 172.31
    C类: 192.168.~

特殊IP地址

  • 回环地址: 本地回环地址指的是 以127开头的地址(127.0.0.1 ~ 127.255.255.254), 通常用127.0.0.1来表示
    图片说明
  • 0.0.0.0
    常用于寻找自己的IP地址,例如在我们的RARP,BOOTP和DHCP协议中,若某个未知IP地址的无盘机想要知道自己的IP地址,它就以255.255.255.255为目的地址,向本地范围(具体而言是被各个路由器屏蔽的范围内)的服务器发送IP请求分组。
  • 一般的广播地址(直接广播地址)能够通过某些路由器(当然不是所有的路由器),而受限的广播地址不能通过路由器。
  • 一个网络内至少提供地址个数:主机数+3 (全0+全1+网关地址)

    NAT 网络地址转换

    图片说明

    路由表的设置

    route add--使用本命令,可以将新路由项目添加给路由表。
    例如,如果要设定一个到目的网络209.98.32.33的路由,其间要经过5个路由器网段,
    首先要经过本地网络上的一个路由器,其IP为202.96.123.5,子网掩码为255.255.255.224,
    那么你应该输入以下命令:
    route add 209.98.32.33 mask 255.255.255.224 202.96.123.5 metric 5
    route add '目标ip' mask '下一跳掩码' '下一跳ip' metric '距离'

    路由表的建立--建立动态路由的路由算法

    图片说明

    距离矢量算法DV

    DV算法也被叫做Bellman-FOrd算法,用于RIP协议。
    每个路由器维护一张表,列出已知到每个路由器最佳距离。邻居之间互相交换信息更新这张表。
    图片说明
    DV算法的最大问题是“好消息传的快,坏消息传的慢”。这引发了无穷计数问题,几乎无法解决,导致被链路状态路由算法替代(link state routing)

    链路状态路由

    图片说明
  • 分发链路状态包采用的是泛洪法的思想,但是我们需要控制规模
  • 控制规模的方法是为每个数据包添加一个序号。只处理新的数据包。忽视重复和过时的数据包。
  • 为了避免序号出现意外错误,加入“年龄”字段使得保存的信息定期超时被丢弃。


    图片说明
  • OSPF开放最短路径优先(Open Shortest Path First),是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。与RIP相对,OSPF是链路状态路由协议,而RIP是距离向量路由协议。

传输层

  • 为应用程序实现端到端的通信(传输层是进程到进程,俗称端到端。网络层是主机到主机,俗称点到点。)
  • 服务:面向连接(TCP),无连接(UDP)
  • 在TCP协议中,有1024个端口是保留给常用服务器的应用端口,又因为端口是从0开始算的所以是0-1023,端口号最大为2^16-1=65535

    UDP

  • 基本上就是IP上披了个皮。没有拥塞控制、重传等功能。一个应用是域名系统DNS(幂等,重复安全)。

    TCP

  • Socket = ip + port

    三次握手

    图片说明

    四次挥手

    图片说明

    整体流程

    图片说明

    窗口管理

    图片说明

    拥塞控制

    skip

应用层

有四个使用的是TCP,其余的都是UDP,大家一般记住这四个是实用的TCP
这四个是:文件传送FTP,电子邮件SMTP(simple mail transport protocol),远程终端接入Telnet,万维网http。

DNS

使用UDP。有递归,迭代两种方法。
图片说明
图片说明

FTP

控制信息使用21端口,数据连接对应20端口。两个并行TCP连接.
控制连接存在于整个FTP会话过程中,数据连接在每次文件传输时才建立.
当客户端向服务器发出连接请求时,客户端与服务器的21端口建立控制连接,并告诉服务器自己的另一个端口号码,用于建立数据连接。接着服务器就用自己的20端口与客户端所提供的端口号进行数据连接,由于FTP使用了两个不同的端口号,所以数据连接和控制连接不会混乱(注意20和21都是服务器端的端口)

SMTP与POP3

SMTP用于发送邮件,POP3用于读取邮件。
用户向邮件服务器以及邮件服务器之间发送邮件时采用SMTP协议。SMTP是建立在FTP文件传输服务上的一种邮件服务,主要用于系统之间的邮件信息传递,并提供有关来信的通知。
用户--ftp--> 邮件服务器 -----smtp ---> 邮件服务器 ---ftp---> 用户

HTTP

采用client-server模式,TCP进行传输。是web的应用层协议。world wide web使用URL来定位整个Internet上的WWW文档。

错误码

100-199 指定client端相应的某些动作。
200-299 表示请求成功
300-399 用于已经移动的文件并且包含在定位头信息中
400-499 指定client端错误
500-599 server端错误

HTTP2.0

HTTP 2.0 所有通信都在一个 TCP 连接上完成。(长连接)
HTTP 2.0 浏览器可以在发现资源时立即分派请求,指定每个流的优先级,让服务器决定最优的响应次序。
HTTP 2.0 支持服务器到客户端的主动推送机制。
HTTP/2.0 通过支持首部字段压缩(头部减小)和在同一连接上发送多个并发消息,让应用更有效地利用网络资源,减少感知的延迟时间

URL

URL由三部分组成:资源类型、存放资源的主机域名、资源文件名。
URL的一般语法格式为:
(带方括号[]的为可选项):
protocol :// hostname[:port] / path / [;parameters][?query]#fragment

全部评论

相关推荐

废铁汽车人:秋招真是牛鬼蛇神齐聚一堂
点赞 评论 收藏
分享
喜欢走神的孤勇者练习时长两年半:池是池,发是发,我曾池,我现黑
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务