资料介绍
10.1 TCP/IP协议概述
10.1.1 OSI参考模型及TCP/IP参考模型
读者一定都听说过著名的OSI协议参考模型,它是基于国际标准化组织(ISO)的建议发展起来的,从上到下共分为7层:应用层、表示层、会话层、传输层、网络层、数据链路层及物理层。这个7层的协议模型虽然规定得非常细致和完善,但在实际中却得不到广泛的应用,其重要的原因之一就在于它过于复杂。但它仍是此后很多协议模型的基础,这种分层架构的思想在很多领域都得到了广泛的应用。
与此相区别的TCP/IP协议模型从一开始就遵循简单明确的设计思路,它将TCP/IP的7层协议模型简化为4层,从而更有利于实现和使用。TCP/IP的协议参考模型和OSI协议参考模型的对应关系如图10.1所示。
图10.1 OSI模型和TCP/IP参考模型对应关系
下面分别对TCP/IP的4层模型进行简要介绍。
n 网络接口层:负责将二进制流转换为数据帧,并进行数据帧的发送和接收。要注意的是数据帧是独立的网络信息传输单元。
n 网络层:负责将数据帧封装成IP数据包,并运行必要的路由算法。
n 传输层:负责端对端之间的通信会话连接与建立。传输协议的选择根据数据传输方式而定。
n 应用层:负责应用程序的网络访问,这里通过端口号来识别各个不同的进程。
10.1.2 TCP/IP协议族
虽然TCP/IP名称只包含了两个协议,但实际上,TCP/IP是一个庞大的协议族,它包括了各个层次上的众多协议,图10.2列举了各层中一些重要的协议,并给出了各个协议在不同层次中所处的位置,如下所示。
n ARP:用于获得同一物理网络中的硬件主机地址。
n MPLS:多协议标签协议,是很有发展前景的下一代网络协议。
n IP:负责在主机和网络之间寻址和路由数据包。
n ICMP:用于发送有关数据包的传送错误的协议。
n IGMP:被IP主机用来向本地多路广播路由器报告主机组成员的协议。
n TCP:为应用程序提供可靠的通信连接。适合于一次传输大批数据的情况。并适用于要求得到响应的应用程序。
n UDP:提供了无连接通信,且不对传送包进行可靠性保证。适合于一次传输少量数据,可靠性则由应用层来负责。
10.1.3 TCP和UDP
在此主要介绍在网络编程中涉及的传输层TCP和UDP协议。
1.TCP
(1)概述。
同其他任何协议栈一样,TCP向相邻的高层提供服务。因为TCP的上一层就是应用层,因此,TCP数据传输实现了从一个应用程序到另一个应用程序的数据传递。应用程序通过编程调用TCP并使用TCP服务,提供需要准备发送的数据,用来区分接收数据应用的目的地址和端口号。
通常应用程序通过打开一个socket来使用TCP服务,TCP管理到其他socket的数据传递。可以说,通过IP的源/目的可以惟一地区分网络中两个设备的连接,通过socket的源/目的可以惟一地区分网络中两个应用程序的连接。
10.1.1 OSI参考模型及TCP/IP参考模型
读者一定都听说过著名的OSI协议参考模型,它是基于国际标准化组织(ISO)的建议发展起来的,从上到下共分为7层:应用层、表示层、会话层、传输层、网络层、数据链路层及物理层。这个7层的协议模型虽然规定得非常细致和完善,但在实际中却得不到广泛的应用,其重要的原因之一就在于它过于复杂。但它仍是此后很多协议模型的基础,这种分层架构的思想在很多领域都得到了广泛的应用。
与此相区别的TCP/IP协议模型从一开始就遵循简单明确的设计思路,它将TCP/IP的7层协议模型简化为4层,从而更有利于实现和使用。TCP/IP的协议参考模型和OSI协议参考模型的对应关系如图10.1所示。
图10.1 OSI模型和TCP/IP参考模型对应关系
下面分别对TCP/IP的4层模型进行简要介绍。
n 网络接口层:负责将二进制流转换为数据帧,并进行数据帧的发送和接收。要注意的是数据帧是独立的网络信息传输单元。
n 网络层:负责将数据帧封装成IP数据包,并运行必要的路由算法。
n 传输层:负责端对端之间的通信会话连接与建立。传输协议的选择根据数据传输方式而定。
n 应用层:负责应用程序的网络访问,这里通过端口号来识别各个不同的进程。
10.1.2 TCP/IP协议族
虽然TCP/IP名称只包含了两个协议,但实际上,TCP/IP是一个庞大的协议族,它包括了各个层次上的众多协议,图10.2列举了各层中一些重要的协议,并给出了各个协议在不同层次中所处的位置,如下所示。
n ARP:用于获得同一物理网络中的硬件主机地址。
n MPLS:多协议标签协议,是很有发展前景的下一代网络协议。
n IP:负责在主机和网络之间寻址和路由数据包。
n ICMP:用于发送有关数据包的传送错误的协议。
n IGMP:被IP主机用来向本地多路广播路由器报告主机组成员的协议。
n TCP:为应用程序提供可靠的通信连接。适合于一次传输大批数据的情况。并适用于要求得到响应的应用程序。
n UDP:提供了无连接通信,且不对传送包进行可靠性保证。适合于一次传输少量数据,可靠性则由应用层来负责。
10.1.3 TCP和UDP
在此主要介绍在网络编程中涉及的传输层TCP和UDP协议。
1.TCP
(1)概述。
同其他任何协议栈一样,TCP向相邻的高层提供服务。因为TCP的上一层就是应用层,因此,TCP数据传输实现了从一个应用程序到另一个应用程序的数据传递。应用程序通过编程调用TCP并使用TCP服务,提供需要准备发送的数据,用来区分接收数据应用的目的地址和端口号。
通常应用程序通过打开一个socket来使用TCP服务,TCP管理到其他socket的数据传递。可以说,通过IP的源/目的可以惟一地区分网络中两个设备的连接,通过socket的源/目的可以惟一地区分网络中两个应用程序的连接。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- 全硬件TCP/IP嵌入式以太网控制器w5500中文资料 22次下载
- 嵌入式Linux应用程序开发-(9)UDP网络通信应用程序(UDP-Socket) 34次下载
- TCP-IP协议讲解 46次下载
- Azure RTOS NetX Duo嵌入式TCP/IP网络堆栈 13次下载
- 一个专为嵌入式系统编写的小型TCP IP协议栈 17次下载
- TCP(IP)协议与网络编程 0次下载
- TCPIP网络与协议-IP协议 0次下载
- 嵌入式TCP/IP协议栈在DSP上的实现 189次下载
- 基于嵌入式TCP/IP协议单片机的杂散电流监测系统 21次下载
- 嵌入式系统中TCP/IP 协议的精简与实现 18次下载
- 一种嵌入式TCP/IP协议的设计与实现 18次下载
- 嵌入式WEB服务器中TCP/IP协议栈的设计与实现 35次下载
- 嵌入式Internet中TCP协议的设计与实现 17次下载
- 在TMS320VC5402 上实现的嵌入式TCP IP协议栈 28次下载
- TCP IP协议栈在嵌入式异构网络互连中的应用 10次下载
- TCP/IP协议和OPC协议的区别 1378次阅读
- IP地址、端口号、通信协议的相关知识 TCP和UDP通信协议简述 1384次阅读
- 什么是TCP/IP协议 1998次阅读
- 基于μcosⅡ和S3C2410实现TCP/IP协议栈LwIP的应用方案 1583次阅读
- 基于mega128芯片实现TCP/IP协议栈的设计 2635次阅读
- 基于TMS320DM643芯片和TCP/IP NDK网络开发包实现电视采集系统的设计 2154次阅读
- 基于TCP/IP编程实现文件传输的案例分析 3562次阅读
- 一种适用于Nagle算法的简化嵌入式TCP协议浅析 949次阅读
- 一种应用于测控系统的基于Linux的嵌入式系统的设计 765次阅读
- 一种应用于测控系统的基于Linux的嵌入式系统的设计方案 900次阅读
- 什么是TCP/IP协议?原理是什么? 3.7w次阅读
- 基于FPGA和嵌入式以太网W5500的TCP/IP协议栈实现设计 7482次阅读
- 大神教你:嵌入式LWIP网络客户端设计 1771次阅读
- TCP/IP协议典型的优化原则和方法 1775次阅读
- 在FPGA中实现嵌入式TCP/IP通信协议栈 7254次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 6基于FPGA的C8051F单片机开发板设计
- 0.70 MB | 2次下载 | 免费
- 751单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21548次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183278次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多