前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >面试必问之TCP/IP协议

面试必问之TCP/IP协议

作者头像
吾非同
发布2020-10-23 14:47:06
6490
发布2020-10-23 14:47:06
举报
文章被收录于专栏:吾非同

网络协议是计算机之间为了实现网络通信而达成的一种“约定”或者”规则“,有了这种”约定“,不同厂商的生产设备,以及不同操作系统组成的计算机之间,就可以实现通信。

什么是TCP/IP协议?

TCP/IP传输控制协议/因特网互联协议,又名网络通讯协议),英文是Transmission Control Protocol/Internet Protocol,是Internet最基本的协议,它是TCP、IP协议等组成的协议集。

OSI: (Open System IInterConnection)开放式系统互联模型

由ISO国际标准化组织定义的参考模型,这个模型把网络通信的工作分为7层,分别为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。

各层的顺序及主要功能:

但是OSI是一个理想的理论模型,实际网络只涉及用到TCP/IP协议的这4层,下图是OSI简化为TCP/IP模型的对应关系,以及每层的主要协议。

各层主要协议的中英文名称:

TCP(Transport Control Protocol)传输控制协议

IP(Internetworking Protocol)网间网协议

UDP(User Datagram Protocol)用户数据报协议

ICMP(Internet Control Message Protocol)互联网控制信息协议

SMTP(Simple Mail Transfer Protocol)简单邮件传输协议

SNMP(Simple Network manage Protocol)简单网络管理协议

FTP(File Transfer Protocol)文件传输协议

ARP(Address Resolation Protocol)地址解析协议

ICMP是(Internet Control Message Protocol)Internet控制报文协议

DNS是域名系统(DomainNameSystem)的缩写

TCP与UDP的区别:

UDP(User Datagram Protocol),用户数据报协议,

1.提供无连接的,不可靠的传输。传输速度较快。缺点是不可靠、不稳定。

2.发送数据之前不需要建立连接,减少了开销和时延。UDP没有阻塞机制,宁愿阻塞时丢弃数据不传,也不阻塞造成延时。

3.UDP支持一对一、一对多、多对一、多对多通信。

TCP(Transmission Control Protocol)传输控制协议。

1.面向连接的、提供可靠的数据传输服务,但是开销较大、传输速度较慢。

2.使用TCP通信之前,需要进行“三次握手”建立连接,通信结束后需要“四次挥手”断开连接。

3.TCP是点对点的连接,一条TCP连接只能连接两个端点。

4.TCP是全双工通信,允许通信双方任何时候都能发送数据,发送数据按顺序、不丢失、不重复。

TCP和UDP的使用场景

需要对网络通讯质量有要求较高的时候,数据要准确无误的传递给对方,如HTTP、HTTPS、FTP等传输文件的协议,以及POP、SMTP等邮件传输的协议。

常见使用TCP协议的应用如下:

浏览器,用的HTTP

Outlook,用的POP、SMTP

对网络通讯质量要求不高的时候,并且要求网络传输速度能尽量的快,这时就可以使用UDP协议。

日常生活中,常见使用UDP协议的应用如下:

QQ语音

QQ视频

三次握手和四次挥手

SYN是标志位,SYN=1表示请求连接.只

有ACK标志位为1时,确认序号字段才有效,ack=seq+1

TCP的标志位有6种标示:

SYN(synchronous建立联机)

ACK(acknowledgement 确认)

PSH(push传送) FIN(finish结束)

RST(reset重置)

URG(urgent紧急)

Sequence number(顺序号码)

Acknowledge number(确认号码)

三次握手:客户端(SYN=1)----服务端(SYN=1、ACK=1)----客户端(ACK=1)

建立连接(拨打电话解读):

客户端:给对方拨电话:喂,你好,我是客户端。

服务器:喂,你好,我是服务器。

客户端:哦,我知道了,那咱们传输数据吧

请点击此处输入图片描述

四次挥手:主动关闭方(FIN)---被动关闭方(ACK)----主动关闭方(FIN)----被动关闭方(ACK)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-03-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 吾非同 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据传输服务
腾讯云数据传输服务(Data Transfer Service,DTS)可帮助用户在业务不停服的前提下轻松完成数据库迁移上云,利用实时同步通道轻松构建高可用的数据库多活架构,通过数据订阅来满足商业数据挖掘、业务异步解耦等场景需求。同时,DTS 还提供私有化独立输出版本 DTS-DBbridge,支持异构数据库和同构数据库之间迁移和同步,可以帮助企业实现完整数据库迁移(如 Oracle)。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档