2022年西安电子科技大学计算机网络大作业 .pdf
-
资源ID:39746845
资源大小:1.08MB
全文页数:6页
- 资源格式: PDF
下载积分:4.3金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
2022年西安电子科技大学计算机网络大作业 .pdf
一、利用 windows socket编写一个简单的聊天程序,要求接收方可以接收并显示发送方在键盘上输入的文字。服务器端截图:客户端截图:客户端发送消息:计算机网络,服务器端接收到之后,发送消息:大作业,客户端接收到并在屏幕上显示。代码:import java.io.DataInputStream;import java.io.DataOutputStream;import .ServerSocket;import .Socket;import java.util.Scanner;/服务器端public class TCP_Server static final int port=36976;static ServerSocket sSocket;名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 6 页 -public static void main(String args)Scanner scanner=new Scanner(System.in);try sSocket=new ServerSocket(port);System.out.println(监听+port+接口.);/while(true)Socket socket=sSocket.accept();DataInputStream din=new DataInputStream(socket.getInputStream();DataOutputStream dout=new DataOutputStream(socket.getOutputStream();dout.writeUTF(成功连接服务器端);String tempStr=din.readUTF();while(!tempStr.contains(exit)System.out.println(客户端信息:+tempStr);dout.writeUTF(scanner.nextLine();tempStr=din.readUTF();System.out.println(客户端信息:+tempStr);din.close();dout.close();socket.close();/catch(Exception e)e.printStackTrace();scanner.close();import java.io.DataInputStream;import java.io.DataOutputStream;import .Socket;import java.util.Scanner;public class TCP_Client static final int port=36976;public static void main(String args)Scanner scanner=new Scanner(System.in);String serverIp=127.0.0.1;名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 6 页 -try Socket socket=new Socket(serverIp,port);DataInputStream din=new DataInputStream(socket.getInputStream();DataOutputStream dout=new DataOutputStream(socket.getOutputStream();String tempStr=Hi!;while(!tempStr.contains(exit)System.out.println(服务端端信息:+din.readUTF();tempStr=scanner.nextLine();dout.writeUTF(tempStr);dout.flush();din.close();dout.close();socket.close();catch(Exception e)e.printStackTrace();scanner.close();一、利用网络抓包软件wireshark 捕获三个以上的协议并进行分析。1、TCP协议TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF 的 RFC 793定义。在简化的计算机网络OSI 模型中,它完成第四层传输层所指定的功能,用户数据报协议(UDP)是同一层内 1 另一个重要的传输协议。在因特网协议族(Internet protocol suite)中,TCP 层是位于 IP 层之上,应用层之下的中间层。不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP 层不提供这样的流机制,而是提供不可靠的包交换。名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 6 页 -上图为打开人民日报微博主页时抓到的,图中可以看到wireshark 截获到了三次握手的三个数据包。第四个包才是HTTP 的,这说明 HTTP 的确是使用 TCP 建立连接的。客户端发送的第一条为SYN 消息,序号 seq=0,不可携带数据但消耗了一个序号。服务器同意链接,回复一条SYN+ACK 消息,序号 seq=0,依旧不可携带数据但是消耗一个序号。客户端收到服务器发送的同意链接消息后再回复一条ACK 消息,此时 seq=1。此时链接就已经建立。下面还包括了封包的详细信息:Frame:物理层的数据帧概况Ethernet II:数据链路层以太网帧头部信息Internet Protocol Version 4:互联网层 IP 包头部信息名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 6 页 -Transmission Control Protocol:传输层 T 的数据段头部信息,此处是TCP Hypertext Transfer Protocol:应用层的信息,此处是HTTP 协议2、ARP地址解析协议地址解析协议,即ARP(Address Resolution Protocol),是根据 IP 地址获取物理地址的一个 TCP/IP 协议。主机发送信息时将包含目标IP 地址的 ARP 请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该 IP 地址和物理地址存入本机ARP 缓存中并保留一定时间,下次请求时直接查询 ARP 缓存以节约资源图中目的地址为 Broadcast的即为广播请求分组,分组中含有自己的IP 地址、物理地址以及所请求的物理地址对应的IP 地址。目的地址为d8:49:0b:b5:7c:55(我的电脑的物理地址)的就是请求到的响应消息。3、HTTP 协议超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW 文件都必须遵守这个标准。设计HTTP 最初的目的是为了提供一种发布和接收HTML页面的方法。1960 年美国人Ted Nelson构 思 了 一 种 通 过 计 算 机 处 理文 本信 息 的 方 法,并 称 之 为 超 文本(hypertext),这成为了 HTTP 超文本传输协议标准架构的发展根基。Ted Nelson组织协调万维网协会(World Wide Web Consortium)和互联网工程工作小组(Internet Engineering Task Force)共同合作研究,最终发布了一系列的RFC,其中著名的 RFC 2616 定义了 HTTP 1.1。名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 6 页 -图中蓝色那一行是Http 协议的响应信息。Http/1.1 表示当前协议为Http,1.1是协议的版本。200表示成功,即表示成功加载了一张图片。名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 6 页 -