网络通信概述&TCP协议习题

 

基础题

练习一:ip地址和端口号概念

描述:

  • 请写出IP地址的概念:
  • 请写出端口号的概念:

答案:

IP地址:互联网协议地址(Internet Protocol Address),俗称IP.IP地址用来给一个网络中的计算机设备做唯一的编号.

 

端口号:端口号用来给计算机里的应用程序(进程)做唯一的标识,2个字节表示的整数,取值范围0~65535.

练习二:UDP协议

判断下列说法是否正确

由于UDP面向无连接的协议,可以保证数据完整性,因此在传输重要数据时采用UDP协议.

答案

判断错误,因为面向无连接,容易丢失包,所以不能保证数据完整.

练习三:TCP协议

TCP协议中”三次握手”,第一次握手指的是什么:

 

答案

第一次握手:客户端向服务器发送请求,等待服务器确认

练习四:TCP网络程序

需求说明:创建新项目,按以下要求编写代码:

在项目下创建TCP 服务器端 端口号为8888

1:等待客户端连接   如果有客户端连接  获取到客户端对象

2:获取到客户端对象之后 当前在服务器读取数据客户端传送数据  

答案

public class TCPServer {

   public static void main(String[] args) throws Exception {

      //1创建服务器对象 

      ServerSocket  ss = new ServerSocket(8888);

      //2等待客户端连接   如果有客户端连接  获取到客户端对象 

      Socket socket = ss.accept();

      //3当前在服务器中  要读取数据  需要输入流  流由谁提供 客户端

      InputStream in = socket.getInputStream();//获取输入流

      //4:读数据

      int len;

      byte[] buffer = new byte[1024];

      while((len=in.read(buffer))!=-1){

         System.out.println(new String(buffer, 0, len));

      }

      //释放资源

      in.close();

//    ss.close();服务器一般不会关闭

   }

}

练习五:TCP网络程序

需求说明:创建新项目,按以下要求编写代码:

在项目下创建TCP 客户端

访问之前创建的服务器端,服务器端ip127.0.0.1 端口号8888

1:客户端连接服务器,并发送 hello.服务器,我是客户端.

2:开启上一题服务器,等待客户端连接,客户端连接并发送数据  

答案:

public class TCPClient {

  public static void main(String[] args) throws Exception {

    //创建 Socket客户端对象

      Socket  socket = new Socket("127.0.0.1", 8888);

      //写数据  需要输出流  谁提供 客户端

      OutputStream out = socket.getOutputStream();

      //写数据

      out.write("hello.服务器,我是客户端.".getBytes());

      //释放资源

      out.close();

      socket.close();

  }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值