惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
The Blog of Author Tim Ferriss
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
云风的 BLOG
云风的 BLOG
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
P
Palo Alto Networks Blog
D
Docker
H
Hackread – Cybersecurity News, Data Breaches, AI and More
S
Schneier on Security
Engineering at Meta
Engineering at Meta
I
InfoQ
L
LangChain Blog
Cyberwarzone
Cyberwarzone
T
Tenable Blog
WordPress大学
WordPress大学
P
Privacy & Cybersecurity Law Blog
罗磊的独立博客
Apple Machine Learning Research
Apple Machine Learning Research
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Jina AI
Jina AI
C
CERT Recently Published Vulnerability Notes
Scott Helme
Scott Helme
博客园 - 三生石上(FineUI控件)
酷 壳 – CoolShell
酷 壳 – CoolShell
Know Your Adversary
Know Your Adversary
D
Darknet – Hacking Tools, Hacker News & Cyber Security
The Last Watchdog
The Last Watchdog
Last Week in AI
Last Week in AI
Cloudbric
Cloudbric
S
SegmentFault 最新的问题
爱范儿
爱范儿
Application and Cybersecurity Blog
Application and Cybersecurity Blog
博客园 - 叶小钗
AI
AI
T
Tor Project blog
I
Intezer
T
Threatpost
www.infosecurity-magazine.com
www.infosecurity-magazine.com
V
Visual Studio Blog
N
News and Events Feed by Topic
Latest news
Latest news
S
Security Affairs
博客园 - Franky
Microsoft Security Blog
Microsoft Security Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
B
Blog RSS Feed
C
Cybersecurity and Infrastructure Security Agency CISA
Hugging Face - Blog
Hugging Face - Blog
小众软件
小众软件
S
Securelist

博客园 - 怀雷

关于C指针 堆、栈和本地堆浅析 IP协议简介 RARP―――逆地址解析协议 在传统以太网中,为什么要有最小帧长度和最大帧长度的限制? 计算机网络原理与Internet技术(第五章) 计算机网络原理与Iternet技术(第四章) 计算机网络原理与Iternet技术(第三章) 计算机网络原理与Iternet技术(第二章) 计算机网络原理与Internet技术(第一章) ARP协议简介 Effective C# 原则2:为你的常量选择readonly而不是const[转载] 在数据库中创建定时任务[原创] 往事以矣 说事[转帖] 装箱(Boxing)和拆箱(Unboxing)[原创] 分部类(Partial Classes)[原创] 大连出差最大的收获 Page_Load()中IsPostBack用法浅析[原创]
TCP/IP简介
怀雷 · 2008-05-17 · via 博客园 - 怀雷
 

TCP/IP简介

1TCP/IP的起源

很早以前,人类的祖先就一直在考虑简便、快捷、准确的通讯方式,从早期的驿站等,到近代的电报、电话、无线电,然后是电脑,人们一直都在不停地探索着,直到1969 年,在美苏冷战期间,美国政府机构试图发展出一套机制,用来连接各个离散的网路系统,以应付战争危机的需求。这个计划,就是由美国国防部委托美国高级计划研究局Advanced Research Project Agency 发展的 ARPANET 网路系统,研究当部份电脑网路遭到攻击而瘫痪后,是否能够透过其他未瘫痪的线路来传送资料。

       最初的ARPANET包括四台主机,这个小网络使用网络控制协议(Network Control Protocol, NCP),向用户提供的服务包括登录到远程主机、在一个远程打印机上打印、传输文件等。

ARPANET 的构想和原理,除了研发出一套可靠的资料通讯技术外,还同时要兼顾跨平台作业。后来,ARPANET 的实验非常成功。

1974年,在ARPANET诞生后的短短五年里,VintonCerfRobert Kahn发明了传输控制协议(Transmission Control Protocol, TCP),一个设计成相对于底层计算机和网络独立的协议族,在80年代初代替了受限的NCP,由于TCP使得其它类ARPANET的不同种网络可以相互通信,从而使得ARPANET的发展超过了任何人的想象。

由于TCP提供了网络所需要的可靠性,因此,研究者们开始不断的扩充此协议,后来将这些协议称为TCP/IP协议族。

TCP/IP 技术是完全公开的,因此它不属于任何厂商或专业协会所有,在网络的整个发展过程中,所有的思想和着重点都以一种叫做RFC的文档格式存在,这些文档讨论了与网络相关的很多方面。

2TCP/IP网络协议

协议是对等的网络实体之间通信的规则,可以简单地理解为网络上各计算机彼此交流的一种“语言”。网络通信协议设计的基本原则是层次化,层和协议的集合被称为网络体系结构。相邻层之间的接口定义了下层向上层提供的基本操作和服务。

通常所说的TCP/IP是一组协议的总称,它包括100多个相互关联的协议,其中IP(Internet Protocol, 网际协议)是网络层最重要的协议,TCP(Transmission Control Protocol, 传输控制协议)UDPUser Datagram Protocol,用户数据报协议)是传输层中最主要的协议。一般认为IPTCPUDP是最根本的三种协议,是其他协议的基础。

IP定义了数据按照数据报传输的格式和规则;TCP是提供可靠服务、面向连接的协议;UDP是不可靠、无连接的协议。

IP将来自传输层的数据封装IP数据包,送往作为目的地的接收端,IP最重要的作用就是将数据传送到目的计算机上,但是它在传送中有以下特点:

l         不保证一定将数据传送到目的计算机上。

l         不保证数据是按照发送的顺序到达目的计算机。

l         不保证数据在传输过程中不受损坏。

l         最大长度有一定的限制。

TCP建立在IP之上,定义了网络上数据传输的格式和规则,提供了IP数据包的传输确认、丢失数据报的重新请求、将收到的数据包按照它们的发送次序重新装配的机制。TCP协议是面向连接的协议,在开始传输数据之前,必须先建立明确的连接。

UDP也是建立在IP之上,但是它是一种无连接的协议,消息从一台计算机发送到另一台计算机,两者之间没有明确的连接。UDP中的Datagram是一种自带寻址信息的、独立地从数据源走到终点的数据包。UDP不保证数据的传输,也不提供重新排列次序或重新请求功能,所以说它是不可靠的。虽然UDP的不可靠性限制了它的应用场合,但它比TCP具有更好的传输效率。

TCP/IP参考模型是Internet的基础,它分为:网络接口层,网际层、传输层和应用层。

l         网络接口层

通过一些通信控制,来保证在同一通信介质的两点间将物理的数据信号准确无误地发送与接收。

l         网际层(IP

在多个网络通过路由器组连接的符合网络中,将来自传输层的信息以IP数据包的形势,传送到目的端。

l         传输层(TCP/UDP

传输层支持应用层之间端对端的数据通信。IP层虽然屏蔽了复杂的网络结构,将IP数据包传送到接收端,但在数据包传送过程中,不保证数据能否到达接收端。

一方面,TCP层以IP层的功能为前提,事先建立发送端与接收端之间的连接,并使用具有重传控制以及流量控制的、可信度较高的传送功能,可以保证数据传送到目的地。另一方面,UDP层是以单一的数据源通信为目的的,将重传控制及流量控制等委托给利用UDP的上层应用层,IP层的服务几乎原封不变地提供给应用层。UDP可以应用于因特网上与声音及图像等多媒体信息相关的通信中。

l         应用层

解决数据传输的机制,所用格式、数据转换等服务,确定通信等。

TCP/IP是用协议栈来工作的。栈是在两台机器之间完成一个传输的所有协议的几个集合,栈也是分层的,它的层次与TCP/IP参考模型的层次划分相关,每一层都需要一些协议支持,每一层都能从相邻的层中接收或发送数据。

3TCP/IP参考模型和OSI参考模型的比较

两个参考模型有很多相似指出。比如:它们都是基于独立的协议栈的概念。层的功能也大体相似。

除了这些基本的相似之处以外,它们也有很多差别,其中有两个最主要的差别。一个差别是层的数量不同:OSI模型有7层,而TCP/IP模型是4层。另一个差别是面向连接的和无连接的通信方式。OSI模型在网络层支持无连接和面向连接的通信,但在传输层仅有面向连接的通信;而TCP/IP模型在网络层仅有一种通信模式――无连接模式,但在传输层支持两种模式――面向连接和面向无连接。