本篇文章仅为本人对看完TCP/IP详解卷一协议的第一章概述内容做出的一个总结。
本章主要讲述了网络体系结构和设计及TCP/IP协议族的概念,如下:
一、Internet体系结构建立是在几个目标指导下建立;1、Internet通信在网络或网关失效时必须能持续。2、Internet必须支持多种类型的通信服务。3、Internet体系结构必须兼容多种网络。4、Internet体系结构必须允许对其资源的分布式管理。5、Internet体系结构必须是经济有效的。6、Internet体系结构必须允许低能力主机的连接。7、Internet中使用的资源必须是可统计的。基于clark描述的首要目标"发展一种重复利用已有的互联网技术"提供了以上七点。
二、分组交换思想与消息边界(或记录标记)。
分组交换思想中,包含一定字节数的数字信息分为一组或称为"块"独立通过网络,与不同来源或发送方的"块"可以组合,且组合之后可以分解称为"(多路)复用"。在发送至目的地过程中,块可以在交换设备之间传输的路径可以改变。有如下俩优点:1.使网络更有弹性(既不用担心网络遭受物理攻击)。2.基于统计复用可以更好利用网络链路和交换设备
消息边界(或消息记录),当一个应用将多个信息块发送到网络中,这些信息块可能被通信协议保留也可能不保留,大多数据报协议保存消息边界,这样的设计很自然,因为数据报本身就有始有终,但在电路交换或虚电路网络中这些类型的协议不保留信息边界,在底层协议也不保留消息边界
三、端到端论点和命运共享
影响TCP/IP协议族设计的一个重要原则称为端到端论点,其倾向于支持一种使用"哑"网络和连接到网络的"智能"系统的设计方案。
命运共享是解决很多功能在端主机的应用程序中实现,选择哪些功能在同一计算机,网络或软件栈中实现的相关原则。
四、差错控制和流量控制
在网络中存在数据损坏或丢失的情况。这可能由各种原因造成,例如硬件问题,数据传输过程中被修改,在无线网络中超出范围等等对这些错误的处理成为差错控制。其中端到端论点和命运共享建议在应用程序附近或内部实现差错控制。
在针对网络中可靠,按顺序交付的实现开销,帧中继和Internet协议采用一种称为"尽力而为交付"的服务,在尽力而为的交付中,网络不会花费很大力气确保数据在没有差错或缺陷的情况下交付,某些差错常用差错检测码或校验和来检测,如果有差错,出错的数据报仅仅被丢弃而没有下一步行动,就如同一次性工具坏了就丢掉就不用管它。当交付成功,发送方能以超过接收方处理能力的速度生成信息。在尽力而为的IP网络中,降低发送方的发送速度可通过流量控制机制实现,它在网络外部或通信系统高层运行。TCP会处理这种问题与端到端论点一致,TCP在端主机中实现速率控制,它也与命运共享一致。该方案在网络基础设施中有些单元失效的情况下,不会影响网络设备的通信能力
五、分层
分层有OSI模型的七层分层与ARPANET的五层分层。
OSI模型七层分层由上而下为;
应用层:指定完成某些用户初始化任务的方法。应用协议通常由开发者设计和实现。例子包括FTP.Skype等
表示层:指定针对应用的数据表示格式和转换规则的方法。典型的例子如字符从EBCDIC转换为ASCLL码。加密有时与本层相关,但也可在其他层中。
会话层:指定由多个连接组成一个通信回话的方法。他可能包括关闭连接,重启连接和检查点进程。ISO X.225是一个会话层协议。(该协议有兴趣的可以去搜一搜了解了解)
传输层:指定运行在相同计算机系统中的多个程序之间的连接或关联的方法,如果在其他地方没有实现,本层可能实现可靠的投递(例如IP数据报,X.25PLP,ISO CLNP)
以上四层均在主机设备
以下三层均在所有网络设备
网络层:指定经过潜在不同类型链路层网络的多跳通信方法。对于分组网络,它描述了抽象的分组格式和标准的编址结构(例如IP数据报,X.25PLP,ISO TP4)
链路层:指定经过单一链路通信的方法,包括多个系统共享同一介质时的"介质访问"控制协议。本层通常包括差错检测和链路层地址格式(例如以太网,WiFi,ISO 13239/HDLC)
物理层:指定连接器,数据速率和如何在某些介质上进行编码。本层也描述低层的差错检测和纠正,频率分配。(例如V.29,以太网1000BWSE-T,SONET/SDH)
ARPANET参考模型为五层由上而下如下:
应用层:实质上是Internet兼容的任何应用,包括网页(http),DNS,DHCP。
传输层:提供在抽象的,由应用管理的"端口"之间的数据交换。可能包括差错和流量控制。(例如TCP,UDP,SCTP,DCCP)
以上两层均在主机
以下三层均在所有网络设备
网络层(辅助):协助完成网络层设置,管理和安全的非正式的"层"。(例如ICMP,IGMP,IPsec)
网络层:定义抽象的数据报和提供路由(例如包括IPV4(32位地址,最大64kb),IPV6(128位地址,最大4GB))
链路层(辅助):用于网络层到基于多接入链路层网络的链路层的地址映射的非正式的"层"(例如ARP)
封装:如果某层获得由它上层提供的PDU(协议数据单元),它通常"承诺"不查看PDU中的具体内容。这就是封装的本质,每层都将来自上层的数据看成不透明,无需解释的信息。
单播:目的地是一台主机
广播:目的地是一个指定网络中的所有主机
组播:目的地是属于一个组播组中的一组主机
六、端口号
端口号是16位的非负整数(范围为0~65535),这些数字是抽象的,在物理上没有任何东西,相反每个IP地址有65536个可用的端口号。标准的端口号由Internet号码分配机构(IANA)分配。熟知端口号(0~1023)注册端口号(1024~49151)动态/私有端口号(49152~65535)
以及一些熟知端口,SSH端口号为22、FTP端口号为20和21、Telnet远程终端协议端口号为23、电子邮件/简单邮件传输协议(SMTP)端口号为25、域名系统(DNS)端口号为53、超文本传输协议或web(http和https)端口号为80、交互式邮件访问协议(IMAP和IMAPS)端口号为143和993、简单网络管理协议(SNMP)端口号为161和162、轻量级目录访问协议(LDAP)端口号为389等等
七、Internet,内联网和外联网
Internet已发展为由很多网络互联起来的网络集合,小写字母开头的internet表示常见协议族互联的多个网络,大写字母开头的Internet表示可使用TCP/IP通信的世界范围的主机集合。
内联网是一个用于描述专用互联网络的术语,通常是由一个商业机构或其他企业来运行,大多情况只供特定企业的成员访问,用户可通过VPN(虚拟专用网)来连接。
在很多情况下一个企业或商业机构可能希望建立一个网络,其中包括可供合作伙伴或其他相关公司通过Internet访问的服务器,这种涉及到VPN的网络通常称为外联网。
八、客户机/服务器
服务器分为两类迭代和并发
迭代有四个步骤
1.等待客户机请求到达
2.处理客户机请求
3.将响应发送给请求的客户机
4.回到步骤2
迭代的问题步骤2需要较长时间且无法为其他客户机服务,于是并发如下
1.等待客户机请求到达
2.启动一个新服务器实例来处理客户机请求。
3.回到步骤2
本章主要讲的TCP/IP协议族的三个主要层次是网络层,传输层和应用层,还有些提及的p2p,rfc,等标准和一些如IEEE,W3C等组织有兴趣的可以自行去百度了解了解