本节介绍一下UDP协议,作为我的专栏《计算机网络协议快速入门教程》中的一节。
在你能够接触到的计算机网络协议中,UDP协议算是最简单的那一类了。同时作为广泛使用的传输层协议,其是非常重要的,因此本章先聊一聊这个协议。
通常介绍TCP/IP 协议的书籍和资料都是从以太网协议,ARP协议,IP协议,TCP协议以及HTTP协议这样逐个的阐述,符合的是数据流动自底向上的过程。如果按照这样的方式来讲,我个人觉得并不利于读者的学习。我当年就是这样学习的,往往是事倍功半。
那么另外一种方式就是自顶向下的讲述,从应用层协议,然后是传输层协议,然后是网络层,最后是物理层。这样的方式从应用层协议说起可能比之上述简单些,但是仍然不能够突出协议的重点。事实上对于初学者以及程序员等从业人员来说协议的重点是传输层协议TCP,UDP,然后才是HTTP,SSL,IP这些协议。同时应用层的协议和应用层以下的协议存在着本质的区别,像HTTP是一种文本协议,而TCP,UDP等是二进制协议,做两个阶段的阐述比较合适。
因此我决定从传输层开始讲起,也就是TCP和UDP协议,这样能够突出重点,从最简单的协议开始符合我们的学习规律。同时单独的阐述每一层协议也是希望尽量让大家明白协议分层的思想,每层各司其职完成自己的工作,从而完成协议层之间的对等传输。
现在有这样干一个场景,就是客户端和服务器之间需要通信(浏览器和网站服务程序),需要交换数据。如果让你来设计其实现过程,该如何?分析如下:
1,需要一个地址字段表征双方的通信地址,浏览器知道服务器地址后可以向服务器发起访问请求,服务器知道浏览器的地址后,就可以将网页数据返回给客户端。就像我们打电话一样需要知道对方的手机号。
2,其次能还需要告诉对方我要发多少