网络通信之:TCP-IP协议详解

TCP-IP协议详解


本篇文章将主要介绍网络通信中的TCP/IP协议的知识

引子

在现实的生活通信当中,不同的国家会用到不同的语言,然而在我们人与人之间需要进行沟通,但我们不能精通所有国家的语言。这个时候怎么办呢?于是国际上规定了英语为人类的通用语言。那么像这种在事先约定好的统一规定我们就称它为一种协议。

随着互联网的不断发展,网络通信成为了我们日常必不可少的一件事,那么在我们的网络世界中,我们是通过怎么样的一种协议进行的通信呢?

早期的计算机网络,都是由各厂商自己规定的一套协议,互不兼容。为了把全世界的所有不同的计算机连接起来,就必须要有一套统一的全球通用的协议,这个协议就是互联网协议族,这是一个互联网通用协议标准(TCP/IP协议)。

TCP/IP协议

简单的来说,TCP/IP协议他是一类协议的总称,这类协议包含了上百种协议,但最重要的两个协议是TCP和IP协议,所以大家把互联网的协议统称为TCP/IP协议。

我们先来看一张简单的网络传输协议图:

在这里插入图片描述

  • 分析:

    前面说过了,TCP/IP协议族里包含了上白种协议,这里这是简单列出部分常见协议

    1.网络传输协议中总共包含了应用层、传输层、网络层、数据链路层

    2.我们从图中可以发现,每一层都有不同的协议,比如,在传输层中有TCP、UDP协议,在网络层中有ICMP、IP协议。

    3.我们日常使用的应用软件则会在应用层中自己规定一些协议,比如我们打开浏览器浏览网页的时候就有http协议,当我们访问一个web服务器获取数据时,浏览器发送数据时需要遵循http协议,即当一个网页需要发送数据给用户的时候一定会按照requests_header+body的形式发送数据。

这里再来看一张TCP/IP协议网络传输示意图:

在这里插入图片描述

  • 分析:

    假如有两个QQ,QQ1给QQ2发送一个“你好”数据,应该怎样发呢?

    1. QQ1首先“你好”这个数据会经过应用层,通过APP开发者规定的协议组装数据:APP | “你好”

    2. 接着,数据来到传输层,通过TCP协议组装数据,比如添加:TCP的源端口、目的端口等:TCP | APP | “你好”

    3. 数据再来到IP层,通过IP协议组装数据,比如添加上源IP、目的IP:IP | TCP | APP | “你好”

    4. 经过IP层的组装,数据来到到了最后一层,也就是链路层,通过链路层协议组装数据,比如添加:源MAC地址、目的MAC地址:帧头 | IP | TCP | APP | “你好” | 帧尾

    5. 最后通过网卡将数据发送到路由器,路由器负责将数据发送到互联网。

    06. QQ2通过链路层检测获取到的数据中的目的MAC地址是否为本身网卡的序列号,来拆解一层数据。

    07. 当链路层根据自身协议确认无误之后将帧头与帧尾拆去,把剩余的数据发送给IP层,IP层再检测目的IP是否为本身IP,来拆解第二层数据。

    08. 当IP层根据自身协议确认无误之后将IP拆去,把剩余的数据发送给传输层,传输层再再通过查看是否具有有目的端口,来拆解第三层数据

    09. 当传输层根据自身协议确认信息无误之后将端口号等数据拆去掉,把剩余的数据给至应用层

    10. 当应用层根据自身协议确认信息无误之后,将剩余协议数据拆除掉,把“你好”这段数据显示给QQ2用户

想要把一个数据正确的传递到对方,其实是一个很复杂的过程,那么这一个过程需要保证数据的稳定性需要很多种协议来配合使用。所以这就是为什么TCP/IP协议族里为什么有上百种协议

OSI标准协议

OSI标准协议七层模型:

在这里插入图片描述

  • 分析:

    从图中我们大致可以表示为:

    1.“应用层”被分为了“应用层、表示层、会话层”

    2.“运输层”还是“运输层”

    3.“网际层”可以称为“网络层”

    4.“网络接口层”被分为了“数据链路层、物理层”

这套协议只是一个理论标准协议,人们按照功能不同,分工不同,人为的将OSI分为七层。实际上这七层是并不存在的,也就是说没有这些概念,而我们今天提到的七层概念,只是人为的划分而已。目的只是为了让大家更好地理解这些都是用来做什么的。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

anonymous_who_am_i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值