实验二网络基础编程实验.docVIP

  • 23
  • 0
  • 约4.85千字
  • 约 22页
  • 2016-05-24 发布于重庆
  • 举报
实验二网络基础编程实验

《计算机网络》 实验报告 信息安全 2015年4月1日 实验二 网络基础编程实验 实验目的   通过本实验,学习采用Socket(套接字)设计简单的网络数据收发程序,理解应用数据包是如何通过传输层进行传送的。 二、实验内容 2.1、编写TCP进行数据发送的简单程序(java) 2.2、编写UDP进行数据发送的简单程序(java) 2.3多线程\线程池对比 2.4写一个简单的chat程序,编程语言不限。 实验程序 (1)TCP客户端TcpClient.java import java.io.*; import java.net.*; public class TcpClient{ public static void main(String argv[]) throws Exception { String sentence;//定义客户消息 String modifiedSentence;//定义服务器消息 InetAddress address = InetAddress.getLocalHost();//获取本机端口 BufferedReader inFromUser = new BufferedReader( new InputStreamReader(System.in)); //创建客户输入流 //创建一个Scoket实例:构造函数向指定的远程主机和端口建立一个TCP连接。address.getHostName()为本机IP地址;6789为TCP服务器端口 Socket clientSocket = new Socket(address.getHostName(),6789); //客户套接字 //通过套接字的输入输出流(I/O streams)进行通信 DataOutputStream outToServer = new DataOutputStream( clientSocket.getOutputStream()); //创建客户端到服务器的输出流 BufferedReader inFromServer = new BufferedReader( new InputStreamReader(clientSocket.getInputStream())); //创建服务端输入流 sentence = inFromUser.readLine();//客户端读取客户输入消息 outToServer.writeBytes(sentence+\n); //客户端发送消息到服务器端 modifiedSentence =inFromServer.readLine();//客户端接收来自服务器的消息 System.out.println(client receive from TCP server: + modifiedSentence);//客户端显示服务器发送过来的消息 clientSocket.close(); //客户端关闭套接字 } } (2)TCP服务器端TcpServer.java import java.io.*; import java.net.*; public class TcpServer { public static void main(String argV[]) throws Exception { String clientSentence;//定义接收的消息 String capitalizedSentence;//定义发送的消息 ServerSocket welcomeSocket= new ServerSocket(6789); //创建一个ServerSocket实例,并指定本地端口,侦听该指定端口收到的连接 while(true){ Socket connectionSocket = welcomeSocket.accept(); //调用ServerSocket的accept()方法以获取下一个客户端连接,基于新建立的客户端连接,创建一个Socket实例,并由accept()方法返回。 BufferedReader inFromClient = new BufferedReader( new InputStreamReader(connectionSocket.getInputStream()));//创建客户端输入流 DataOutputStream outToClient = new DataOutputStream(connectionSocket.getOutputStream());//创建服务器输出流 //使用所返回的

文档评论(0)

1亿VIP精品文档

相关文档