本文包括下面内容:

1.TCP/IP协议系统

2.OSI模型

3.数据包

4.TCP/IP的交互方式

1.TCP/IP模型的协议层

分为四层:

网络訪问层:提供与物理网络连接的接口。依据硬件的物理地址实现数据寻址。
网际层:提供独立于硬件的逻辑寻址。

传输层:为网络提供流量控制、错误控制和确认服务,充当网络应用程序的接口。

应用层:为文件传输、远程控制等提供应用程序。

OSI七层模型

物理层:把数据转换为传输介质上的电子流或模拟脉冲,并监视数据的传输。
数据链路层:提供与网络适配器相连的接口,维护子网的逻辑连接。
网络层:支持逻辑寻址与路由选择。
传输层:为网络提供错误控制和数据流控制。
会话层:在计算机的通信应用程序之间建立会话。
表示层:把数据转换为标准格式,管理数据加密与压缩。
应用层:为应用程序提供网络接口,支持文件传输、通信等功能的网络应用。

相应关系:

2.数据包

数据包有点像俄罗斯套娃。

在发送时。从上到下,每一层把信息和报头组织在一起,作为下一层的数据,下一层再加自己的报头。

在接收时反之。


数据包在每一层具有不同的形式和名称:
在应用层生成的数据包被称为消息;
在传输层生成的数据包封装了应用层的消息,假设来自于传输层的TCP协议。就被成为分段。假设来自于传输层的UDP协议,就被成为数据报。
在网络层的数据包称为数据报。
在网络訪问层的数据包被称为帧。



3.工作场景

1.数据从应用层通过TCP或UDPport传到传输层
2.数据分段传递到网际层,IP协议提供逻辑寻址信息。把数据封装为数据报
3.数据进入到网络訪问层,网络訪问层创建一个或多个数据帧,从而进入到物理网络
4.数据帧被转化为比特流




4.单播、广播、多播、任播

单播:1对1通信
广播:同一链路全部计算机
多播:发送给特定一组
任播:面向特定一组。从中选出一台最符合网络条件的主机发送消息,被选中的主机会返回一个单播信号

TCP/IP解析(一):TCP/IP的工作方式的更多相关文章

  1. dubbo注册服务IP解析异常及IP解析源码分析

    在使用dubbo注册服务时会遇到IP解析错误导致无法正常访问. 比如: 本机设置的IP为172.16.11.111, 但实际解析出来的是180.20.174.11 这样就导致这个Service永远也无 ...

  2. 传输层-Transport Layer(下):UDP与TCP报头解析、TCP滑动窗口、TCP拥塞控制详解

    第六章 传输层-Transport Layer(下) 上一篇文章对传输层的寻址方式.功能.以及流量控制方法做了简短的介绍,这一部分将介绍传输层最重要的两个实例:TCP协议和UDP协议,看一看之前描述的 ...

  3. 标准的TCP/IP工业以太网-EtherNet/IP

    标准的TCP/IP工业以太网-EtherNet/IP                            徐智穹以太网具有传输速度高.兼容性好.应用广泛等方面的优势,支持几乎所有流行的网络协议,其中 ...

  4. 【Java TCP/IP Socket】TCP Socket(含代码)

    TCP的Java支持 协议相当于相互通信的程序间达成的一种约定,它规定了分组报文的结构.交换方式.包含的意义以及怎样对报文所包含的信息进行解析,TCP/IP协议族有IP协议.TCP协议和UDP协议.现 ...

  5. ip头、tcp头、udp头详解及定义,结合Wireshark抓包看实际情况

    公司的同事们在分析网页加载慢的问题,忽然使用到了Wireshark工具,我就像发现新大陆一样好奇,赶紧看了看,顺便复习了一下相关协议.上学时学的忘的差不多了,汗颜啊! 报文封装整体结构 mac帧头定义 ...

  6. [转]使用wireshark分析TCP/IP协议中TCP包头的格式

    本文简单介绍了TCP面向连接理论知识,详细讲述了TCP报文各个字段含义,并从Wireshark俘获分组中选取TCP连接建立相关报文段进行分析. 一.概述 TCP是面向连接的可靠传输协议,两个进程互发数 ...

  7. 【TCP/IP 合约】 TCP/IP 基金会

    总结 : 通过学习 TCP/IP 基础, 并总结相关笔记 和 绘制思维导图 到博客上, 对 TCP/IP 框架有了大致了解, 之后開始详细学习数据链路层的各种细节协议, 并作出笔记; 博客地址 : h ...

  8. 【TCP/IP 协议】 TCP/IP 基础

    总结 : 通过学习 TCP/IP 基础, 并总结相关笔记 和 绘制思维导图 到博客上, 对 TCP/IP 框架有了大致了解, 之后开始详细学习数据链路层的各种细节协议, 并作出笔记; 博客地址 : h ...

  9. TCP/IP协议--TCP协议概括和TCP连接的建立和终止

    TCP提供一种面向连接的.可靠的字节流服务.面向连接指,发送和接收方在交换数据前必须建立一个TCP连接.顺便说下,一个TCP连接只有两方,因此广播和多播是不能应用于TCP的.字节流指,两个应用程序通过 ...

  10. TCP/IP 协议图--TCP/IP 基础

    1. TCP/IP 的具体含义 从字面意义上讲,有人可能会认为 TCP/IP 是指 TCP 和 IP 两种协议.实际生活当中有时也确实就是指这两种协议.然而在很多情况下,它只是利用 IP 进行通信时所 ...

随机推荐

  1. Google Chrome调试常用快捷键

    Ctrl+Shift+I调出开发者工具 Ctrl+R刷新(界面显示不清楚,刷新后变清楚)

  2. sqlserver导入数据到mysql的详细图解

    SQL Server 迁移数据到MySQL 一.背景 由于项目开始时候使用的数据库是SQL Server,后来把存储的数据库调整为MySQL,所以需要把SQL Server的数据转移到MySQL:由于 ...

  3. netty之ByteBuf详解

    [ChannelPromise作用:可以设置success或failure 是为了通知ChannelFutureListener]Netty的数据处理API通过两个组件暴露——abstract cla ...

  4. React Component(dva)

    Stateless Functional Components(3种方式) class App extends React.Component function App() const App= Re ...

  5. PHP CURL的几种用法

    1.抓取无访问控制文件 <?php $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://localhost/mytest/ ...

  6. Linux之tar.gz file

    A tarball (tar.gz file) is compressed tar archive. The tar program provides the ability to create ta ...

  7. Oracle数据库基础知识总结(一)

    数据库名.实例名.数据库域名.全局数据库名.服务名,这是几个令很多初学者容易混淆的概念.相信很多初学者都与我一样被标题上这些个概念搞得一头雾水. 我们现在就来把它们弄个明白. 一.数据库名 什么是数据 ...

  8. 图像局部显著性—点特征(SiftGPU)

    SIFT的计算复杂度较高. SiftGpu的主页:SiftGPU: A GPU Implementation of ScaleInvariant Feature Transform (SIFT) 对S ...

  9. C# 检测dll的新版本号方法

    FileVersionInfo info = FileVersionInfo.GetVersionInfo(YourFileNameHere);string version = info.FileMa ...

  10. python tips:dict的key顺序

    python3.6+版本中,dict的键值保持插入有序. t = list(range(10)) b = t[:] d = dict(zip(t, b)) print(list(d.items())) ...