zoukankan      html  css  js  c++  java
  • tcp/ip协议详解

    该协议理解起来。按照不同的角度可以分为不同的层次,可以四层,可以五层,可以七层。。。。

    但本人觉得,分为五层的话,更容易理解:

    1、应用层

    2、传输层

    3、网络层

    4、链接层

    5、实体层

    我们从下往上来理解。

    实体层,顾名思义,就是拥有实体的东西,一台电脑与一台电脑相连接可以用光缆,电缆,双绞线,无线电波等方式,把他们链接起来的物理方式,就属于实体层。作用呢,就是主要传输0和1的电信号。

    然后我们说链接层。

    链接层,首先我们通过实体层拿到了0和1的电信号,但是单纯的0和1电信号并没有什么实际作用,这个时候通过链接层去设置它们的分组方式。这种分组方式呢,是由公司自己定义的,但是又很不方便,于是,

    慢慢的一个叫做“以太网”的协议(以太网协议具体内容请自行百度,这里不做过多解释)占据了主导地位,也就是我们现在所用的协议。既然叫做链接,那么肯定是要有终点的,现在由0和1组成的信息有了,

    如何找到这个这个终点呢。于是就有了一个叫做MAC地址(即网卡的地址)的东西,这个地址每一个在全世界都是独一无二的。然后,以太网通过一种叫做ARP的协议在本网络内进行广播,也就是向本网络内

    所有的计算机发送数据,由计算机自己判断是否为接收方。总的来说,链接层的作用是将电信号按照一定规则组成一个有序组合,然后通过广播的方式发送给指定的地址,然后由计算机接收,over。

    第三,我们来说网络层

    网络层,在上一层中我们说过,数据通过广播的方式发送到所有的计算机上,但是这个只限于本网络。世界这么大,整个互联网是由无数的子网络汇成的。要由一个子网络发送数据到另一个子网络,这个时候

    用广播显然已经不可能了,于是就有了“路由”(老规矩,自行百度)。然后在使用路由之前,我们需要先判断处于发送和接收信息的计算机是否处于同一个网络。这个时候就要用到我们的第三层“网络层”了,

    网络层引进了一套新的地址,用来区分计算机是否处于同一网络,叫做“网络地址”,也就是我们说的网址。最后网址判断计算机所在的子网络,MAC地址将数据包发送到该子网络下的目标网卡,任务完成。

    在这一层中,我们提到了“网络地址”,顺理成章,IP协议出来了。IP协议是规定网络地址的协议,现在广泛应用的是第四版。也就是IPV4。

    第四,传输层

    传输层,综上所述,我们就已经知道了通过IP地址和MAC地址,我们就能实现主机与主机之间的链接,但是我们拿到数据后应该干什么用呢,浏览器用?还是聊天用?我们并不知道,所有就又有了一个叫做

    端口的东西,"端口"是0到65535之间的一个整数,正好16个二进制位。0到1023的端口被系统占用,用户只能选用大于1023的端口。传输层的作用就是建立端口到端口到通信。

    最后就是应用层了

    应用层,应用程序收到"传输层"的数据,接下来就要进行解读。由于互联网是开放架构,数据来源五花八门,必须事先规定好格式,否则根本无法解读。"应用层"的作用,就是规定应用程序的数据格式。

    至此,tcp/ip协议复习完成。

  • 相关阅读:
    HDU 5336 The mook jong (DP)
    HDU 1686 Oulipo (KMP——统计模式串出现次数)
    hdu 1711Number Sequence (KMP——输出模式串第一次出现位置)
    POJ Borg Maze (BFS+最小生成树)
    POJ 2349 Arctic Network (最小生成树第K大(小)边)
    hdu 1712 ACboy needs your help (dp 分组背包)
    hdu 1181 变形课 (bfs)
    hdu 2069 Coin Change (dp 母函数 )
    hdu 1171 Big Event in HDU(dp 01背包 母函数)
    hdu 1398 Square Coins (母函数)
  • 原文地址:https://www.cnblogs.com/lxlry/p/7427458.html
Copyright © 2011-2022 走看看