• 网络编程~~~osi五层协议


    物理层 / 数据链路层 / 网络层 / 传输层 / 应用层(表示层/会话层)

    一 物理层

    物理层指的就是网线,光纤, 双绞线等物理传输介质

    物理层发送的是数据(比特流)

    二 数据链路层

    数据链路层对数据进行分组

    以太网协议:对数据进行合理的分组

    一组数据构成一个数据报,又叫一帧

    每一个数据报分为: 报头head和数据data两部分

    head包含: 源地址(6个字节) 目标地址(6个字节) 数据类型(6个字节)

    data包含: 数据报的具体内容(最短46字节,最长1500字节)

    mac地址: 计算机网卡上标注的地址,12位16进制数组成(前六位是厂商编号,后六位是流水线号)

    计算机的通信方式: 同一个局域网内,通过广播的形式通信.

    消息一经广播发出,局域网所有的计算机都能接收到消息,分析消息,是否是找我的,不是就丢弃

    计算机只能在局域网内进行广播: 范围大了就会造成广播风暴,效率极低

    交换机的mac地址自主学习功能:

    同一局域网内: 第一次发送数据, 需要广播的形式,获取对方的mac地址,将mac地址与网口写入交换机的对照表; 第二次发送数据(计算机与网口没更换),单播发送,直接从mac对照表寻找对方的地址

    三 网络层

    3.1 IP协议

    IP协议: 确定局域网(子网)的位置.

    IP字段: 四分段十进制 192.168.0.12

    取值范围:0255.0255.0255.0255

    子网掩码: C类子网掩码: 255.255.255.0

    ip地址 + 子网掩码 按位 与运算 计算出是否在统一局域网(子网,网段).

    C类子网掩码 一个网段最多可以承载256个IP地址:

    172.168.10.0 网关占用

    172.16.10.255 广播地址占用

    最多连接254台计算机

    3.2 ARP协议

    ARP协议: 广播的方式发送数据报, 通过对方的IP地址获取到对方的mac地址.

    四 传输层

    传输层功能:建立端口到端口的通信

    端口范围0-65535,0-1023为系统占用端口

    端口协议: 确定软件在计算机的位置

    UDP / TCP 协议

    TCP: 可靠的,面向连接的协议, 流式协议, 传输效率低全双工通信,面向字节流. 使用TCP的应用:Web浏览器;文件传输程序。

    UDP:不可靠的,无连接的服务, 用户数据报协议, 传输效率高(发送前时延小),一对一、一对多、多对一、多对多、面向报文(数据包),尽最大努力服务,无拥塞控制。使用UDP的应用:域名系统 (DNS);视频流;IP语音(VoIP)。

    TCP协议的三次握手和四次挥手:

    三次握手:(建立连接)

    四次挥手:(断开连接)

    syn洪水攻击:制造大量的假的无效的IP请求服务器.致使正常的IP访问不了服务器.

    7.3.5 应用层

    应用层功能:规定应用程序的数据格式。

    软件自己定的协议

    广播(局域网内) + mac地址(计算机位置) + IP(局域网的位置) + 端口(软件在计算机的位置)

    有了以上四个参数:就可以确定世界上任何一个计算机的软件的位置

  • 相关阅读:
    浅谈IO这件事
    tushare+pandas实现财经数据分析
    大话设计模式Python实现-解释器模式
    大话设计模式Python实现- 享元模式
    大话设计模式Python实现-中介者模式
    大话设计模式Python实现-职责链模式
    大话设计模式Python实现-命令模式
    大话设计模式Python实现-桥接模式
    java之AbstractStringBuilder类详解
    java之Class类详解
  • 原文地址:https://www.cnblogs.com/lav3nder/p/11802117.html
Copyright © 2020-2023  润新知