RedRain的简书:http://www.jianshu.com/users/29e03e6ff407/latest_articles
HTTP和TCP的区别
OSI参考模型 和 TCP/IP协议群1.TCP/IP 协议群的具体含义
从字面意义上讲, 有人可能会认为TCP/IP是指TCP和IP两种协议. 实际生活中有时也确实就是指这两种协议. 然而在很多情况下, 它只是利用IP进行通信时所必须用到的协议群的统称.
具体来说, IP或ICMP, TCP或UDP, TELENT或FTP, 以及HTTP等都属于TCP/IP的协议
TCP/IP 一词泛指这些协议, 因此, 有时也成 TCP/IP 为网际协议族
2.什么是Http
Http中文叫做超文本传输协议
, 它完成客户端到服务端等一系列运作流程
2.1 与Http关系密切的协议: IP, TCP和NDS
你可以稍微看一下 Http和Https的区别
3.什么TCP
TCP是 TCP/IP协议族中, 传输层中的一种实现.
3.1 TCP的特点以及其目的
为了通过IP数据报实现可靠性传输, 需要考虑很多事情, 例如数据的破坏, 丢包, 重复以及分片顺序混乱等问题, 如果不能解决这些问题, 也就无法谈起可靠传输
TCP通过 校验和
, 序列号
, 确认应当
, 重发控制
, 连接管理
, 以及窗口控制
等机制实现可靠性传输
3.2 TCP确保数据能到达目标
为了确保无误地将数据送达目标处, TCP协议采用了三次握手策略.用TCP协议把数据包送出去后, TCP不会对传送后的情况置之不理, 它一定会向对方确认是否成功送达. 握手过程中使用了TCP的标志(flag) --- SYN (synchronize) 和 ACK (acknowledgement)
发送端首先发送一个带SYN标志的数据包给对方. 接受端收到后, 回传一个带有SYN/ACK标志的数据包以示传达确认信息. 最后, 发送端再回传给一个带ACK标示的数据包, 代表握手
结束
若在握手过程中, 某个阶段莫名中断, TCP协议会再次以相同的顺序发送相同的数据包.
三次握手的过程, 可以理解为 确认 发送端
和接收端
两端的接收和发送能力,
形如打电话通话双方:
发送端: A
接收端: B
第一次握手: 发送端发出SYN标示消息.
A: 喂, 你好,能听到吗?
(站在B的角度:收到了A的的消息, 证明A的发送能力是OK的, B自己的接收能力是OK的)
第二次握手: 接收端回传SYN/ACK标示
B: 我收到了, 你能听到我说话吗?
(站在A的角度: 收到B的回传, A了解了自己的发送和接收能力都OK,
B的发送和接受能力也是OK的)
第三次: 发送端回传ACK标示
A: 我可以听到你说话. 那咱们开始通话吧.
(站在B的角度:收到了A的的消息, 证明A的发送和接收能力是OK的,
B自己的发送和接收能力也是OK的, 可以开始通信了.)
网友评论