码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 网络原理知识


    网络原理

    • 前言
    • 一、网络
    • 二、五层体系结构
    • 三、MAC地址、IP地址、端口、协议
    • 四、UDP、TCP
      • 4.1自定义实现
      • 4.2TCP长连接VS短链接
      • 4.3UDP(重点)
      • 4.3TCP(重点)
      • 4.3TCP连接与管理
      • 小结
      • 4.4断开连接——四次挥手
      • 4.4流量控制
      • 4.4拥塞控制
    • 五、IP地址
    • 六、DNS、NAT、ARP
    • 总结


    前言


    一、网络

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    二、五层体系结构

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    三、MAC地址、IP地址、端口、协议

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    四、UDP、TCP

    4.1自定义实现

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    4.2TCP长连接VS短链接

    在这里插入图片描述
    在这里插入图片描述

    4.3UDP(重点)

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    4.3TCP(重点)

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    4.3TCP连接与管理

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    小结

    在这里插入图片描述
    在这里插入图片描述

    4.4断开连接——四次挥手

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    4.4流量控制

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    4.4拥塞控制

    在这里插入图片描述
    在这里插入图片描述

    五、IP地址

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    4位版本号(version):指定IP协议的版本,对于IPv4来说,就是4。

    4位头部长度(header length):IP头部的长度是多少个32bit,也就是 length * 4 的字节数。4bit表示最大的数字是15,因此IP头部最大长度是60字节。

    8位服务类型(Type Of Service):3位优先权字段(已经弃用),4位TOS字段,和1位保留字段(必须置为0)。4位TOS分别表示:最小延时,最大吞吐量,最高可靠性,最小成本。这四者相互冲突,只能选择一个。对于ssh/telnet这样的应用程序,最小延时比较重要;对于ftp这样的程序,最大吞吐量比较重要。

    16位总长度(total length):IP数据报整体占多少个字节。

    16位标识(id):唯一的标识主机发送的报文。如果IP报文在数据链路层被分片了,那么每一个片里面的这个id都是相同的。

    3位标志字段:第一位保留(保留的意思是现在不用,但是还没想好说不定以后要用到)。第二位置为1表示禁止分片,这时候如果报文长度超过MTU,IP模块就会丢弃报文。第三位表示"更多分片",如果分片了的话,最后一个分片置为1,其他是0。类似于一个结束标记。

    13位分片偏移(framegament offset):是分片相对于原始IP报文开始处的偏移。其实就是在表示当前分片在原报文中处在哪个位置。实际偏移的字节数是这个值 * 8 得到的。因此,除了最后一个报文之外,其他报文的长度必须是8的整数倍(否则报文就不连续了)。

    8位生存时间(Time To Live,TTL):数据报到达目的地的最大报文跳数。一般是64。每次经过一个路由,TTL -= 1,一直减到0还没到达,那么就丢弃了。这个字段主要是用来防止出现路由循环。

    8位协议:表示上层协议的类型。

    16位头部校验和:使用CRC进行校验,来鉴别头部是否损坏。

    32位源地址和32位目标地址:表示发送端和接收端。

    选项字段(不定长,最多40字节):略。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    六、DNS、NAT、ARP

    在这里插入图片描述
    在这里插入图片描述
    ARP

    虽然我们在这里介绍ARP协议,但是需要强调,ARP不是一个单纯的数据链路层的协议,而是一个介于数据链路层和网络层之间的协议;

    ARP协议的作用:ARP协议建立了主机 IP地址 和 MAC地址 的映射关系。

    在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址;数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢弃;

    因此在通讯前必须获得目的主机的硬件地址

    总结

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    10张流程图+部署图,讲透单点登录原理与简单实现
    Bumptop——3D桌面一键get
    轻量级的项目管理看板工具-Leangoo领歌
    Benchmarking Chinese Text Recognition: Datasets, Baselines| OCR 中文数据集【论文翻译】
    纯css就能实现可点击切换的轮播图,feel起来很丝滑
    Python桌面应用之XX学院水卡报表查询系统(Tkinter+cx_Oracle)
    volatile关键字及内存可见性,指令重排序
    HarmonyOS 4.0 实况窗上线!支付宝实现医疗场景智能提醒
    lazada商品评论列表获取方法
    LM小型可编程控制器软件(基于CoDeSys)笔记三十:错误3728
  • 原文地址:https://blog.csdn.net/weixin_47270825/article/details/125393519
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号