因为我曾经读过socket的源码,所以最近想抽出一些时间来学习一下TCP/IP协议,我有几个网友做这方面的开发,他们的工资都非常高,这让我觉得很神奇,做嵌入式开发还不如他们的待遇好,废话不说了,开始今天的学习吧,首先是关于TCP的一些概念,应该理解的:
TCP/IP(传输控制协议/网际协议)是互联网中的基本通信语言或协议。在私网中,它也被用作通信协议。当你直接网络连接时,你的计算机应提供一个TCP/IP程序的副本,此时接收你所发送的信息的计算机也应有一个TCP/IP程序的副本。从这句话可以看出TCP就是控制传输的协议,IP是网际协议是基于地址解析的。
TCP/IP是一个两层的程序。高层为传输控制协议即TCP的概念,它负责聚集信息或把文件拆分称更小的包。这些包通过网络传送到接收端的TCP层,接收端的TCP层把包还原为原始文件。低层是网际协议即IP的概念,它处理每个包的地址部分,使这些包正确的到达目的地。网络上的网关计算机根据信息的地址来进行路由选择。即使来自同一文件的分包路由也有可能不同,但最后会在目的地汇合。IP地址都知道他的意思,不用贴上来了。
TCP/IP使用客户端/服务器模式进行通信。TCP/IP通信是点对点的,意思是通信是网络中的一台主机与另一台主机之间的。TCP/IP与上层应用程序之间可以说是“没有国籍的”,因为每个客户请求都被看做是与上一个请求无关的。正是它们之间的“无国籍的”释放了网络路径,才是每个人都可以连续不断的使用网络。
许多用户熟悉使用TCP/IP协议的高层应用协议。包括万维网的超文本传输协议(HTTP),文件传输协议(FTP),Telnet和简单邮件传输协议(SMTP)。这些协议通常和TCP/IP协议打包在一起。
使用模拟电话调制解调器连接网络的个人电脑通常是使用串行线路接口协议(SLIP)和点对点协议(PPP)。这些协议压缩IP包后通过拨号电话线发送到对方的调制解调器中。
有TCP/IP协议相关的协议还包括用户数据报协议(UDP),它代替TCP/IP协议来达到特殊的目的。其他协议是网络主机用来交换路由信息的,包括Internet控制信息协议(ICMP),内部网关协议(IGP),外部网关协议(EGP),边界网关协议(BGP)。
这些都是一些对TCP的协议的概述,感觉还是很容易理解的
阅读(1276) | 评论(0) | 转发(0) |