网络安全常见协议解析:TCP、UDP、HTTP、FTP、SMTP等之间的区别

了解网络安全行业的都知道,网络安全协议是营造网络安全环境的基础,是构建安全网络的关键技术 。常见的网络协议如HTTP协议、TCP/IP协议、FTP协议等 。
如果你想进入网安行业,这些协议都是需要重点要学习和了解的,这也将是决定你的安全技术瓶颈高低的一个重要因素 。
那么今天安仔就跟大家简单介绍下,我们在做网络安全工作中,常见到的几个协议;

网络安全常见协议解析:TCP、UDP、HTTP、FTP、SMTP等之间的区别

文章插图
 
HTTP协议举个栗子,老张喜欢看岛国小片,时常泡在论坛上和网友交流最新资讯,老张是通过浏览器浏览网页的,而浏览器就是借助HTTP协议与论坛服务器沟通交流 。
FTP协议【网络安全常见协议解析:TCP、UDP、HTTP、FTP、SMTP等之间的区别】还是老张,老张购买了该网站的会员,可以无限制下载高清小片,老张是通过浏览器下载影音文件的,浏览器是借助FTP协议与文件下载服务器沟通交流 。
SMTP协议近10个G的高清文件,老张心潮澎湃打开文件,傻了,“孙悟空大战白骨精”映入眼帘 。。。老张怒了,打开电子邮件客户端写投诉邮件,怒斥不良网站的欺诈行为!而电子邮件客户端是借助SMTP协议与邮件服务器沟通交流 。
通常称与人类直接打交道的协议,叫应用层(Application)协议,或者业务层协议 。
网络安全常见协议解析:TCP、UDP、HTTP、FTP、SMTP等之间的区别

文章插图
 
上文的三个协议对应三种业务:
· 浏览网页 --HTTP
· 下载文件 --FTP
· 发送邮件 --SMTP
通俗地说,应用层协议,如同人类的小秘书兼翻译,用服务器可以听得懂的语言与服务器沟通 。
假设服务器只会SMTP语言,老张使用只会FTP语言的小翻译来和服务器唠嗑,就会呈现一幅“鸡同鸭讲”的滑稽画面 。而老张使用会SMTP语言的小翻译就可以顺畅地沟通 。
但应用层协议,不过是人类的小翻译,只擅长翻译工作,其它的啥也不会!
HTTP、FTP、SMTP三个小翻译,能把老张的需求翻译成由“0”、“1”组成的小串串,简称应用数据块 。
那么,问题来了,
1. 应用数据块如何在浩瀚的互联网准确无误找到目的地?
2. 服务器回应数据块如何在浩瀚的互联网准确无误地返回?
3. 应用数据块在到达目的地之前丢失了,如何处理?
4. 服务器回应数据块旅途中丢失了,如何处理?
这些问题在TCP/IP协议面前,都不再是问题!
TCP/IP协议就是为了解决这些问题而诞生的!!!
IP协议在应用数据块的外层写上目的地IP地址,使得应用数据块可以找到目的地,这样就解决问题1 。
还会在应用数据块的外层写上源IP地址,使得服务器回应数据块返回源主机,这样就解决问题2 。
网络安全常见协议解析:TCP、UDP、HTTP、FTP、SMTP等之间的区别

文章插图
 
抬杠的同学会说,应用数据块外层写上目的IP地址,就一定可以到达目的地?不一定吧!
把老张的网线拔了、无线关了、移动网络4G也关了,把老张的所有访问互联网的通道全关闭了,应用数据块还能到达目的地哇?
那肯定不能到达,神仙来了也爱莫能助!
所以在这里这种强调两点:
· 底层物理网络的连通性是IP能否正常工作的前提
· IP路由表在全球路由器里完成了同步
即使有了这两个前提条件,也不能100%保证IP报文能够到达目的地!
信号传输过程失真造成丢包、网络发生拥堵而丢包 。。。
我们还需要一个协议,这个协议需要有以下特质:
· 当丢包发生时,能够自动修复丢包,而无需人的手动干预
· 能够智能感知网络的拥堵情况,网络空闲时,尽最大速率发包;网络拥堵时,降低速率发包,不给互联网添堵
满足这个特质的协议,它的名字叫TCP协议 。
TCP协议TCP协议也不是什么大神,不过是一个任劳任怨的流量调度员 。说到底它就有一个本事:
确认机制!
凭着这个看家本领,TCP可以保证应用数据的可靠传输 。
也正是这个确认机制,让千千万万个学习TCP协议的同学,苦苦挣扎痛不欲生!
但愿有同学读完这篇文章,快速脱离苦海 。。。
TCP确认机制通俗地说,TCP会对发出的数据包(以下简称包裹)进行编号,如同快递的快递单号一样 。对方TCP收到包裹,会回复一个确认消息,确认收到了该编号的包裹了 。


推荐阅读