zoukankan      html  css  js  c++  java
  • python记录_day27 tcp/ip五层模型

    ## 网络协议按照不同的功能分为多层,目前存在的模型有osi七层模型、tcp/ip五层和tcp/ip四层模型

    我们主要用的是tcp/ip五层模型

    那么每层的作用是什么呢,现在就从设计者的角度自下到上逐层分析:

    #物理层

    两个设备要想进行数据传输,必须是连通的,物理层就是要干这件事,它主要定义物理设备的标准。在物理层传输的是电信号

    #数据链路层

    设备连通了,那么怎么确定你是不是我要找的那个设备呢,于是出现了Mac地址,每个网卡都有一个全球唯一的Mac地址(出厂是就被烧录进去了),在数据链路层,数据会封装成帧,每个数据帧会有一帧头,里面有源Mac地址和目标Mac地址以及数据类型等信息,这样接受设备在收到这个数据帧时,比较MAC地址,如果和自己设备的相同就收下,否则就丢掉。

    #网络层

    如果单靠Mac地址的话,几个设备之间通信还好,一个设备发一个信息,其他设备都会接收到并进行比较,但如果有很多设备,那么信息就会很多,就会形成广播风暴,于是出现了IP地址,用IP将网络隔离成一个个小的局域网。在网络层,数据会添加一个IP头封装成IP数据包,ip头中有源ip和目的ip的信息

    #传输层

    数据在被一个设备接收后,那么由谁来使用呢?这时就要用到端口了,应用程序的每个进程都会对应一个端口号,在传输层,就会为数据加上端口号信息,包括源端口和目标端口

    根据传输要求的不同,传输层协议分为TCP协议和UDP协议。

    tcp协议:面向连接的,提供可靠传输,效率低。

    tcp连接的三次握手和四次挥手(见下图)

    udp协议:面向无连接的,不可靠传输,效率高

    #应用层

    为用户的应用程序提供网络服务。收到数据后要进行解读,这些数据才算有意义,那解读就要遵循一等的规则,应用层的协议的相当于解读的规则。

    ####

     下面是别人对于tcp/ip五层模型的讲解,介绍的很详细,也和容易理解。

    http://www.ruanyifeng.com/blog/2012/05/internet_protocol_suite_part_i.html?tdsourcetag=s_pcqq_aiomsg

  • 相关阅读:
    python json 和 pickle的补充 hashlib configparser logging
    go 流程语句 if goto for swich
    go array slice map make new操作
    go 基础
    块级元素 行内元素 空元素
    咽炎就医用药(慢性肥厚性咽炎)
    春季感冒是风寒还是风热(转的文章)
    秋季感冒 咳嗽 怎么选药
    解决IE浏览器“无法显示此网页”的问题
    常用的 css 样式 记录
  • 原文地址:https://www.cnblogs.com/zhang-yl/p/10003879.html
Copyright © 2011-2022 走看看