应用层协议的设计及实现

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

应用层协议的设计及实现计算机网络案例教学•应用层协议主要规定两方面的内容:一是通信双方交换数据的格式与顺序,二是通信双方应该采取的动作。•应用层利用运输层实体提供的服务来完成某种具体的应用。•这些服务以函数或对象的方法来体现。应用层协议的设计及实现应用层协议的设计及实现计算机网络案例教学一、本协议的主要内容是在服务器端与客户端间传输文件。•客户端给出文件名,则服务器寻找该文件,若找到则传输给客户端。•找不到则报错。给出该协议的详细设计。二、设计完协议后,再使用传统的C语言套接字函数实现该协议。案例内容应用层协议的设计及实现计算机网络案例教学•同学们请考虑以下问题:•一、本协议应该包括哪些主要内容?本协议的基本结构是怎样的?•二、C语言套接字函数可能有哪一些?问题应用层协议的设计及实现计算机网络案例教学演示已编写好的服务器端与客户端程序。服务器端程序(server.exe)客户端程序(client.exe)同学们请继续考虑以下问题:根据实现这个协议的两个程序,本协议的详细内容应该是什么?给同学们10分钟的时间,时间到时请同学上台讲一讲。进一步的问题应用层协议的设计及实现计算机网络案例教学1.由于要传输各种类型的文件,本协议在运输层采用可靠的TCP协议。2.服务器端在固定端口10000监听。3.客户首先向服务器发送欲传输的文件名(包含路径),该项数据是变长的,是一个ASCII码字符串。4.服务器收到文件名,在本地查找并打开该文件。协议的详细内容(一)应用层协议的设计及实现计算机网络案例教学5.若查找不到该文件,或者无法打开,服务器向客户发送4字节的全“0”数据,此次通信结束。6.若成功打开该文件,服务器首先向客户发送4字节的文件长度。这是一个整型无符号数字。7.在发送完文件长度后,服务器开始发送整个文件。发送完毕后结束通信。协议的详细内容(二)应用层协议的设计及实现计算机网络案例教学8.客户发送完文件名后,先接收4字节数据,若为全“0”,则结束通信,并向用户报错。9.若4字节数据不是全“0”,则开始接收文件内容,并写入硬盘。接收完毕后结束通信。协议的详细内容(三)应用层协议的设计及实现计算机网络案例教学目前的多种开发工具都可以实现本协议,最简单的办法利用开发工具中的套接字对象,建立该对象后调用它的相关方法就能实现数据的收发。为更好地体会运输层协议提供的服务,此次我们使用VC++开发工具,并使用传统的套接字函数实现本协议。协议的实现(一)应用层协议的设计及实现计算机网络案例教学服务器程序使用的套接字函数主要有:Listen(),accept(),send(),recv(),closesocket()等。客户机程序使用的套接字函数主要有:connect(),send(),recv(),closesocket()等。服务器程序源文件(serverDlg.cpp)客户机程序源文件(clientDlg.cpp)协议的实现(二)应用层协议的设计及实现计算机网络案例教学1.协议规定了通信双方交换的数据格式与采取的动作。应该是清晰的、无二义性的。这样服务器器程序与客户机程序可由不同的人按照协议文本分别实现,只要符合协议,这两个程序一定能够正常配合运行。2.编程实现应用层协议时,必须要用到运输层提供的服务,可由套接字函数来提供,也可以由套接字对象来提供。反思

1 / 10
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功