使用计算机ip地址拷贝,西工大计算机网络作业3汇编.docx

西工大计算机网络作业3汇编

当两台计算机分别和中继器、二层交换机、三层交换、路由器相连时,请分别画出计算机与交换设备五层参考模型;计算机1 应用层传输层网络层数据链路层物理层计算机2应用层传输层网络层数据链路层物理层路由器上图为计算机和路由器连接.。三层交换机与上图连接相同。二层路由器与计算机连接只经过数据链路层和物理层,中继器与计算机连接只经过物理层。2.学习SOCKET编程,写出TCP、UDP通信流程;将实例程序两个同学一组,实现两台计算机之间通信。并写出学习报告;TCP通信流程客户端服务器sanUDP通信流程客户端服务端利用socket实现TCP,UDP通信的流程如上图所示。SOCKET实验报告实验目的学习SOCKET编程,理解计算机通信的流程,分别实现TCP,UDP协议下两台计算机之间的通信。实验原理 Socket编程机制客户端:(1)客户端程序在运行后,首先需要使调用 WSAStartup 函数,确保进程加载 socket 应用程序所必须的环境和库文件,如 Ws2_32.dll。(2)调用函数 Socket 创建 SOCKET,在创建时需指定使用的网络协议、连接类型等。(3)填充 SOCKADDR 结构,指定服务端的地址、端口等。(4)调用 connect 函数连接到服务端。(5)如果连接成功,就可以使用 send 和 recv 函数发送和接收数据。(6)在数据传输完成后,可调用 closesocket 函数关闭 Socket。 (7)调用 WSACleanup 函数释放资源。服务端:(1)程序在运行后,首先需要使调用 WSAStartup 加载 Ws2_32.dll。(2)调用函数 socket 创建用于监听的 SOCKET,在创建时需指定使用的网络协议、连接类型等。(3)1 调用 bind 函数将 Socket 绑定到网络地址和端口。(4)调用 listen 函数开始监听。(5)调用 accept 函数等待客户端连接。在客户端连接后,accept 函数返回,得到连接 Socket。在 accept 函数返回后,可立即再调用,以处理其他客户端的连接。(6)得到连接 Socket 后,可调用 send 和 recv 发送、接收数据。(7)在数据传输完成后,可调用 closesocket 函数关闭 Socket。(8)调用 WSACleanup 函数释放 DLL。函数用法:WSAStartup 函数的功能是加载 Ws2_32.dll 等 Socket 程序运行的环境。其返回值用来判断程序是否调用成功。WSACleanup 函数释放 Ws2_32.dll 库,函数无参数。Socket 函数的功能是建立一个绑定到指定协议和传输类型的 Socket。用来指定网络地址的类型,传输类型,传输协议。send函数的功能是向连接的另一端发送数据。参数为套接字,发送的数据,发送数据长度。Send成功则返回实际发送的数据,失败则返回SOCKET_ERROR.recv函数的功能时是从连接的另外一端接收数据。closesocket函数用于关闭socket。bind函数的功能是将socket与网络地址和端口绑定起来。listen的函数是将socket的状态设置为监听,以使客户端程序可以连接。accept函数的功能是接收客户端的连接,accpet函数直到客户端有连接后才会返回。实验过程将服务器端及客户端的代码中ip地址均改为另一台充当服务器端计算机的ip地址,编译运行。将服务器端代码生成的exe文件拷贝到另一台计算机上运行。在客户端中发送消息,在另一台计算机上查看是否能够接收到来自服务器端发送的消息。实验结果TCP通信客户端服务端UDP通信客户端:服务端五.实验收获以前从未了解过socket编程,所以在看到老师给的源码后,一大堆从未见过的函数看的我云里雾里。于是开启搜索模式,看了很多博客,慢慢理清socket编程的机制以及一些函数的用法。要实现两台计算机之间的通信,须把服务器端和客户端的地址都绑定到服务器的ip上。但是不知道为什么两台连接的计算机必须在同一局域网下,还需要查资料继续了解。而且socket编程中的这些函数的参数还有很多可用的选项,有时间还可以试着玩一下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值