TCP/IP协议
1978年,美国国防部高级研究计划署ARPA(Advanced Research Project Agency)开发了TCP/IP协议。1980年前后,arpanet开始向TCP/IP协议转换。
1983年1月,arpanet向tcp/ip的转换全部结束。同时,美国国防部国防通信局将arpanet分为两个独立的部分,一部叫作MILNET,用于美国军方的数据通信;另一部分仍叫arpanet,用于进一步的研究工作,今天的internet就起源于ARPA网。
ARPA将TCP/IP 协议低价出售,鼓励各厂商开发TCP/IP相关产品,加上TCP/IP本身功能强大,灵活好用,最终广泛流行。
( 1984年,ISO国际标准化组织参照了TCP/IP及其它的协议,开发了OSI协议。OSI协议将网络划分为七层,又称七层参考模型。但该协议最终没有在网络中被使用, 今天的网络采用的是TCP/IP协议。 )
OSI 理论上的标准 ( 研发)
TCP/IP 事实上的标准 ( 组网)
OSI 物理层 数链层 网络层 传输层 会话层 表示层 应用层
TCP/IP 网络接口层 网络层 传输层 应用层
一、网络接口层:(OSI的1-2层)
物理层:主要定义电气或机械特性,如电压、电流、线缆和接口的标准。
数据链路层:在相邻节点之间建立链路,传送数据帧。
局域网: 以太网
广域网: DDN专线 SDH 专线
二、网络层: (OSI的第3层)
ICMP协议: 网络控制消息协议,发送控制报文,传递差错、控制、查询等信息。
Ping 测试网络连通性,发送ICMP的echo请求包,通过回送的echo relay进行。
Tracert 测试到目标经历的路由器。
Tracert 先发送 TTL 为 1 的数据包,并在随后的每次发送过程将 TTL 递增 1,直到目标响应,通过检查中间路由器发回的“ICMP 超时”的消息确定路由。
IGMP: 互连网组管理协议,用于组播通信。
IP协议: IP编址 路由转发
ARP协议: 地址解析协议 (由IP 地址查对方的MAC地址)
46—1500字节
UDP
IPV4标识 QOS标识 总长 分段标识 生存时间 上层协议 校验 源IP 目的IP TCP头部 应用
层
V4 0 1500 64 TCP 172.16.1.1 202.1.1.2 邮件
TTL
IP地址:
由32位的0、1代码组成,每8位为一段。为方便表示,采用点分十进制的格式。
11000000 11000000 00000001 00000010 = 192.192.1.2
0000 0000 = 0
1111 1111 = 255
A类 (1-126) 前8位表示网络位,后24位表示主机位。
60 . 00000000.00000000.00000000
( 127.0.0.0/8 网络保留,作环回测试用。)
B类 (128-191) 前16位表示网络位,后16位表示主机位。
160 . 1. 00000000.00000000
C类 (192-223) 24 8
前24位表示网络位,后8位表示主机位。
200 . 1 . 1 . 00000000
D类 (224-239) 用于组播地址 224.0.0.0 --- 239.255.255.255
E类 (240-255) 科研使用
单播 一个主机将数据发送到网络中的单个节点.
广播 一个主机将数据发送到网络中某网段的所有节点. 本地广播 255.255.255.255 2层: 48个1
定向广播 172.16.2.255/24 (12个F)
组播 一个主机将数据发到网络中一组节点.
子网掩码:
用来标识一个IP地址哪些是网络位, 哪些是主机位.
1表示网络位
1表示主机位
例如:
60.1.1.2 /8 255.0.0.0
160.1.1.2 /16 255.255.0.0
200.1.1.2 /24 255.255.255.0
私有IP地址:
可以重复使用, 节约IP地址.
10.0.0.0 / 8 1个A类
172.16.0.0 / 16 ---172.31.0.0 /16 16个B 类
192.168.0.0 / 24 --- 192.168.255.0 / 24 256个C类
地址解析协议ARP
由IP 地址查对方的MAC地址,广播请求,单播回应。
主机A ping 目标192.168.1.253,需要完成3层和2层封装。目标3层IP已知,但目标2层MAC末知,主机A以广播方式向整个网络询问“谁是192.168.1.253,请问你的MAC是多少?”网段内所有主机都收到,但只有192.168.1.253回应,用单播方式告诉主机A自己的MAC地址。
主机A完成2层封装,发送ping包。同时,将B的MAC信息写入ARP缓存表,以便下次使用。
C:\Users\Administrator>ping 192.168.1.253
来自 192.168.1.253 的回复: 字节=32 时间=6ms TTL=255
来自 192.168.1.253 的回复: 字节=32 时间=44ms TTL=255
来自 192.168.1.253 的回复: 字节=32 时间=6ms TTL=255
telnet协议全称C:\Users\Administrator>arp –a (老化时间默认1200秒)
Interface: 192.168.1.60 --- 0x2
Internet Address Physical Address Type
192.168.1.251 00-1c-f0-40-cd-61 dynamic
192.168.1.253 08-00-2b-0a-c7-ea dynamic
不同网段的ARP
当主机发现目标主机和自己不在同一网段:
1. 主机通过ARP协议查网关的MAC,将数据传递给网关。
2. 网关通过查路由表,到前往目标的下一跳,然后用ARP协议解析一下跳的MAC,将数据传给一下跳。
3. 最后一跳路由器通过ARP协议解析目标MAC, 将数据传给目标主机。
三、传输层: (OSI的第4层)
实现终端用户到终端用户之间的连接。
1.分段:使数据的大小适合在网络上传递。分段后用序列号标识
2.区分服务:标识上层的通信进程。 利用端口号(1-65535)来实现。
如:WWW FTP QQ …..
80 21 4000 25 110
传输层协议:
传输控制协议TCP (Transmission Control Protocol)
用户数据报协议UDP (User Datagram rotocol)。
TCP和UDP的区别:
TCP 1. 面向连接,正式数据发送前必须通三次握手建立连接。
2. 需要确认,丢包重传。
3. 通过滑动窗口机制,可以对数据传输进行流量控制。
可靠性好,适用于一次传输大量数据的情况,如文件传输,浏览网页,发送邮件等。
UDP 1. 非连接,发送数据前不需要建立连接。
2. 不需要确认,丢包不重传。
可靠性不好,适用于一次传输较小量的数据,如DNS、DHCP、SNMP、TFTP等。 另外,对延时比较敏感的应用,如VOIP、视频会议等应用,只能采用UDP协议。
TCP报文格式
源端口 目标端口 序列号 确认号 窗口 校验 ...... 上层数据
端口:标识上层通信进程,区分不同的服务 1-65535
保留端口 标识公用服务,如HTTP, SMTP, TELNET等。
1-1023
自由端口 标识临时进程,结束释放,如IE, QQ
1024-65535
PC: >netstat –ano 查看本机开启的网络服务
活动连接
协议 本地地址 外部地址 状态 PID
TCP 0.0.0.0:7 0.0.0.0:0 LISTENING 348
TCP 0.0.0.0:9 0.0.0.0:0 LISTENING 348
TCP 192.168.1.60:5900 192.168.1.100:49166 ESTABLISHED 3252
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论