互联网协议

互联网协议

## 互联网协议
– 概括:从上到下,越上越接近用户,越下越接近硬件
– 应用层:
    + 规定应用程序的数据格式
    + [HEAD(以太网标头) [HEAD(IP标头) [HEAD(TCP标头) DATA(应用层数据包)]]]

– 传输层(端口到端口的通信): 定义端口号
    + 端口:
        * 0到65535(2^16)的整数
        * 进程使用网卡的编号
        * 通过IP+mac确定主机,只要确定主机+端口(套接字socket),就能进行程序间的通信
    + UDP协议:
        * 数据包中加入端口依赖的新协议
        * 数据包[HEAD(发送、接收mac) [HEAD(发送、接收ip) [HEAD(发送、接收端口) DATA]]]
        * 简单,可靠性差,不知道对方是否接受包
    + TCP协议:
        * 带有确认机制的UDP协议
        * 过程复杂,实现困难,消耗资源
        “`
          tcp/ip connect: tcp/ip的三次握手
                  标有syn的数据包
                  ————->
                  标有syn/ack的数据包
          client  <————-  server
                  标有ack的数据包
                  ————–>
        “`

– 网络层(主机到主机的通信):定义IP
        “`
          tcp/ip finish: tcp/ip的四次握手
                  fin
                  <————-
                  ack
        client    ————-> server
                  fin
                  ————->
                  ack
                  <————-
        “`

– 网络层(主机到主机的通信):
    + IP协议
        * ipv4:
            – 32个二进制位表示,由网络部分和主机部分构成,
            – 子网掩码: 网络部分都为1,主机部分都为0,目的判断ip的网络部分,如255.255.255.0(11111111.11111111.11111111.00000000)
            – IP数据包:标头Head+数据Data,放进以太网数据包的Data部分[HEAD [HEAD DATA]]
            – IP数据包的传递:
                + 非同一网络:无法获得mac地址,发送数据到网关,网关处理
                    – ARP(Address Resolation Protocol): 解析地址协议,通过ip解析mac地址
                + 同一网络:mac地址填写FF:FF:FF:FF:FF:FF:FF,广播数据,对比ip,不符合丢包

– 链接层:定义mac
    + 定义数据包(帧Frame)
        * 标头(Head):数据包的一些说明项, 如发送者、接收者、数据类型
        * 数据(Data):数据包的具体内容
        * 数据包:[HEAD DATA]
    + 定义网卡和网卡唯一的mac地址
        * 以太网规定接入网络的所有终端都应该具有网卡接口,数据包必须是从一个网卡的mac地址到另一网卡接口的mac地址
        * mac全球唯一,16位16位进制组成,前6厂商编号,后6网卡流水号
    + 广播发送数据
        * 向本网络内的所有设备发送数据包,对比接收者mac地址,不是丢包,是接受

– 实体层:物理层
    + 终端(pc,phone,pad…)的物理连接(光缆,电缆,路由…),负责传递0和1信号

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113825.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • AvalonDock使用心得「建议收藏」

    AvalonDock使用心得「建议收藏」  桌面程序的应用,不可避免的就会用到大量的布局控件,之前的一个项目也想过去做类似于VisualStudio的那种灵活的布局控件,也就是界面上的控件能够实现拖拽放置、隐藏、窗口化等一系列的操作,但由于开发时间以及需求的原因,没有太严格要求这方面功能的实现,也就只能算是想过一下而已,实际用的时候还是固定布局,但是最近接触到新的项目,需要这方面的应用就不得不自己动手查找和做这样的东西了。  有朋…

    2022年7月20日
    14
  • 微信小程序一个js文件读取多个接口数据「建议收藏」

    微信小程序一个js文件读取多个接口数据「建议收藏」我也不知道这个叫啥问题我也不知道这样写是不是不对数据确实拿到了data:{warningarr:null,mydata:null,mySensor:null},/***生命周期函数–监听页面加载*/onLoad:function(options){ ……/*自己的…

    2022年8月18日
    7
  • docker常用命令详解

    docker常用命令详解

    2021年6月1日
    83
  • webstorm2022最新激活码_最新在线免费激活

    (webstorm2022最新激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html0VOERWDQ5R-eyJsaWNlbnNlSWQi…

    2022年3月31日
    463
  • 组合数公式的递归实现,如何分析其时间复杂度

    组合数公式的递归实现,如何分析其时间复杂度 https://www.zhihu.com/question/38474425

    2022年7月25日
    9
  • qq视频资源是什么_qq代码视频教程

    qq视频资源是什么_qq代码视频教程QQ视频资源裂变源码有哪些功能对于2021年网赚引流最快变现的一些思路qq资源!已解锁全部!点击进入观赏!这个是分享以后得卡片标题内容这个系统有2个版本,第一调用单个视频资源链接(支持mp4,m3u8格式),第二个版本支持观看10-60秒后强制分享弹窗下上图片位置带自定义图片广告跳转,跳转链接可批量留多个裂变网页链接达到裂变式框架“`…

    2022年8月24日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号