网络技术与应用 总结

零、概述

  • OSI参考模型:物理层,数据链路层,网络层,传输层,会话层,表示层,应用层
  • TCP/IP模型:物理层、网络接口层,互联网络层,传输层,应用层

一、物理层

  • 以电压的高低和灯光的闪灭代表0和1,规定连接器和网线的规格
  • 集线器:工作于物理层和数据链路层的介质访问控制(MAC)子层;共享介质;采用广播方式发送;冲突检测,载波监听,多路访问。

二、数据链路层

  • 作用:互连设备之间传送和识别数据帧
  • 相关技术:MAC地址,共享介质型网络,非共享介质型网络,根据MAC地址转发,环路检测技术,VLAN
  • 以太网是众多数据链路中最著名、最广泛的一种
    • 以太网交换机:(相当于持有多个端口的网桥)根据数据链路层中每个 帧的目的MAC地址,决定从哪个网络接口发送数据;所参考的、用以 记录发送接口的表叫作转发表(自动生成)。
    • 帧格式:(8字节前导码)+6字节 目的MAC+源MAC+2字节 上层协议类型+46~1500字节 数据+4字节 FCS 帧检验序列
  • 其余数据链路:无线通信、PPP。。。

三、网络层

  • 作用:在数据链路层提供的两个相邻端点之间的数据帧传送功能上,进一步管理网络中的数据通信,将数据设法从源端经过若干个中间节点传送到目的端,从而向传输层提供最基本的端到端的数据传送服务→ 地址管理和路由选择

  • IP协议(internet protocol 网际协议)

    • 是一种无连接、不可靠的IP分组的交付服务,
    • IP地址
      • 分类:A类 0开头;B类 10开头;C类110 开头; D类 1110开头,多播地址;E类 11110 开头,保留为今后使用


        image.png
      • 网络号字段 + 主机号字段
      • 子网编址→使得多个物理网络可以共用一个网络前缀→IP = 【网络号, 子网号,主机号】→子网掩码,网络号和子网号部分全1→广播地址,主机号部分全1
      • 无分类编址CIDR,其网络前缀等同于子网划分中的网络号和子网号
    • IP数据报格式
      • 首部(20字节)+数据部分
      • 版本0.5+首部长度0.5+服务类型1+总长度2+标识2+标志,片偏移2+生存时间1+协议1+首部校验和2+源地址4+目的地址4
      • 生存时间TTL,单位是跳,标识IP数据报在网络中剩余的寿命;协议字段指出应将数据部分交给哪一个进程,ICMP IGMP TCP UDP OSPF;
      • 只校验首部,而不校验数据部分
        image.png
    • IP数据报分片和重组
      • 原因:不同网络MTU不同
      • 路由器负责分片,目的主机负责重组
      • 标识:源主机赋予数据报的唯一标识符;标志:标志是否允许分片以及是否是最后一个分片;片偏移,以8字节位单位
      • 分片原则:分片个数越少越好,且是8字节的整数倍(最后一个分片不足8字节的部分补0)。
    • 地址解析协议ARP
      • 作用:为网络层IP地址和数据链路层MAC地址提供动态映射
      • 使用广播方式获得物理地址
      • 使用ARP高速缓存,具有20分钟生存周期
      • ARP获得的是IP数据报传送到目的主机过程中下一跳上路由器的MAC地址
    • 因特网控制报文协议ICMP
    • 虚拟专用网
  • 路由器

    • 一个路由器至少应当有两个不同的IP地址
    • 包括路由选择部分和分组转发部分
    • 若路由器处理分组的速率赶不上分组进入队列的速率,则未处理的分组存入缓存→输入或者输出队列产生溢出是造成分组丢失的重要原因
    • 转发原则
      • 同一网络:直接交付,不使用路由器;间接交付,使用路由器,根据路由表转发。
      • 路由表:(目的网络地址,子网掩码,下一跳路由器IP地址(如果是直接交付,则可以用横杠表示),接口)
      • 特定主机路由:掩码255.255.255.255;默认路由:掩膜0.0.0.0
      • 最长前最匹配
    • 私有地址:只能用于专用互联网内部通信的IP地址空间:10/8、 172.16/12、 192.168/16

四、传输层

  • 作用:管理两个网络节点之间的数据传输

  • 端口:

    • 作用
    • 五元组:源IP,目的IP,协议号,源端口号,目的端口号,
    • 端口号由其使用的传输层协议决定→不同的传输协议可以使用相同的端口号;如,TCP与UDP使用同一个端口号,但使用目的各不相同→数据到达IP层后,会先检查IP首部中的协议号,再传给相应协议的模块做端口号的处理。→知名端口号与协议无关
  • TCP:

    • 面向连接的、可靠的流协议→用于有必要实现可靠传输的情况

    • 是什么:TCP是传输控制协议,是一种面向连接的、可靠的、基于字节流的传输层通信协议。

    • 应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分组成适当长度的报文段(通常收改计算机连接的网络的数据链路层的MTU的限制),之后TCP把结果包传给IP层,有它来通过网络将包传送给接收端实体的TCP层。TCP层为了保证不丢包,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。

    • 报文格式:2源端口+2目的端口+4序号+4确认号+2 数据偏移、保留、偏置+2窗口+2校验和+2紧急指针


      image.png
      • 序列号:表示发端到收端发送的数据字节流,表示在这个报文段中的第一个数据字节在数据流中的序号
      • 确认号:发送确认的一段所期望收到的下一个序号,因此确认序号应当是上次已成功收到的数据字节序号加1,不过只有当标志位ACK置1时,确认号字段才有效
      • 偏移:首部中32bit字的数目→占4bit→首部最长4*15=60字节
      • 标志位:URG,表明报文中包含紧急数据;ACK,确认号有效;PSH,数据报到达收端立即交给应用程序,而不是在缓冲区排队;SYN,同步号,建立连接用;FIN,发端已经达到数据末尾,数据传输完成。
      • 窗口:滑动窗口,用于流量控制??
    • 连接管理

      • 三次握手:
        • 发端发送连接请求报文段,SYN=1,ACK=0,seq=x;
        • 收端收到SYN报文段,发送SYN+ACK报文段,SYN=1,ACK=1,seq=y,ack=x+1;
        • 发端发送ACK报文段,SYN=0,ACK=1,ack=y+1
      • 数据传输阶段:
        • 发端:SYN=0,ACK=1,seq=x+1,ack=y+1
        • 收端:SYN=0,ACK=1,ack=x+1
      • 四次挥手:
        • 主机1请求关闭,主机1向主机2发送FIN报文段,设置seq_1和ack_1,
        • 主机2确认请求,主机2收到FIN报文段,发回一个ack报文段
          ack_2=seq_1+1,
        • 主机2请求关闭,主机2想主机1发送FIN报文段,seq_2 = y,
        • 主机1向主机2发送确认报文段,主机2收到主机1确认报文段后关闭连接;主机1等待2MSL(最大报文段生成时间)后没收到回复,则证明主机2已经正常关闭,主机1关闭连接。


          image.png
    • 为何进行三次握手,不是两次握手?

      • 为了防止已失效的连接请求报文段突然又传送到了服务端→架设client发送的第一个请求连接报文段并没有丢失,而是在某个网络节点长时间滞留,连接释放后某个时间才到达server;server在收到此请求后,误认为是新请求,发回确认报文段,如果不是三次握手,此时连接已经建立,server会一直等待client发来数据,造成server资源的浪费。
    • 为何进行四次挥手?

      • TCP是全双工模式,当主机1发出FIN报文段时,只是表示主机1已经没有数据要发送,但是主机1还可以接受来自主机2的数据→主机2发回ACK报文表示已经知道主机1没数据发送;当主机2也发送FIN报文段,表示主机2也没数据发送,主机1才能关闭连接。
        • 状态变化:FIN_WAIT_1→主动关闭连接,等待对方回应;FIN_WAIT_2,半连接状态;TIME_WAIT,收到对方的FIN报文,并发送出ACK报文,等待2MSL后即可进入关闭状态;CLOSE_WAIT,收到并确认对方关闭请求后,等待自己数据传送完毕;LAST_ACK,等待对方确认报文,一旦收到确认报文即可关闭
  • UDP:

    • 不具有可靠性的数据包协议,细微的处理会交给上层的应用去完成→用于对高速传输和实时性有较高要求的通信或广播通信
    • UDP是什么,UDP是用户数据报协议,它不提供复杂的控制机制,提供面向无连接的通信服务。
image.png

五、路由控制协议

  • 外部网关协议EGP
    • 边界网关协议 BGP
  • 内部网关协议IGP
    • 路由信息协议 RIP
    • 开放式最短路径优先 OSPF
  • 路由算法
    • 距离向量算法:根据距离和方向决定目标网络或目的主机位置
      • 优点:处理简单
      • 缺点:只有距离和方向信息,当网络构造复杂时,获得稳定路由信息前需要消耗一定时间;容易发生路由循环;每个路由器持有信息不同,无法判断信息正确与否
    • 链路状态算法:路由器在了解网络整体连接状态的基础上生成路由控制表
      • 优点:所有路由器持有相同信息,便于检验;即使网络结构复杂,每个路由器也能保持正确信息
      • 缺点:获取路由信息表需要高速CPU处理能力和大量内存。
  • RIP
    • 基于距离向量算法决定路径,距离的单位为 跳数
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,236评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,867评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,715评论 0 340
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,899评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,895评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,733评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,085评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,722评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,025评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,696评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,816评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,447评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,057评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,009评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,254评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,204评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,561评论 2 343

推荐阅读更多精彩内容

  • 个人认为,Goodboy1881先生的TCP /IP 协议详解学习博客系列博客是一部非常精彩的学习笔记,这虽然只是...
    贰零壹柒_fc10阅读 5,051评论 0 8
  • 1.这篇文章不是本人原创的,只是个人为了对这部分知识做一个整理和系统的输出而编辑成的,在此郑重地向本文所引用文章的...
    SOMCENT阅读 13,037评论 6 174
  • 1. 基础知识 1.1 3种常见的计算机体系结构划分 OSI分层(7层):物理层、数据链路层、网络层、传输层、会话...
    Mr希灵阅读 19,840评论 6 120
  • 见你 一眼 冰容雪 暖花开 又一眼 心跳提高频率 梦里多半身影 一闭看尽江山 再一眼 你不见我 思绪拉断 酒喝不暖...
    火锅不暖阅读 306评论 1 7
  • 本文节选自钱颖一《大学的改革》卷一 学院篇 我对教育问题有极大的兴趣,原因有三个方面:一是我的求学经历(清华、哥伦...
    忠爽生活教育阅读 546评论 1 2