Java基础知识-网络编程

来源:互联网 发布:Linux如何修改权限 编辑:程序博客网 时间:2024/06/18 05:04

网络编程

  • 三要素:ip、端口、协议
  • OSI网络层次参考模型/TCP&IP参考模型
  • TCP和UDP的区别
    1. 基于连接和无连接
    2. TCP要求系统资源较多,UPD较少
    3. UDP程序结构较简单
    4. 流模式(TCP)和数据包模式(UDP)
    5. TCP保证数据正确性和数据的顺序,UDP不保证
    6. 其他请参考

socket—-插座 套接字

  • socket就是为了网络服务提供的一种机制
    通信的两端都是socket
    socket位于传输层和会话层之间
    网络的通信其实都是socket间的通信
    数据在两个socket间进行IO传输
    java中对应Socket类

  • java实现TCP和UDP连接的步骤

  • TCP:

    1. 创建客户端和服务端
    2. 服务端:建立服务端的SeverSocket,监听端口;获取连接的客户端对象(使用accept方法,此方法为阻塞式方法,会一直持续监听);定义socket对象的输入输出流;使用输出流发送给客户端信息,使用输入流获取客户端发送的信息。
      客户端:建立客户端的Socket,指定连接的服务端地址和端口;定义socket对象的输入输出流;使用输出流(字节流)向服务端发送信息,使用输入流(字节流)获取服务器的回执。
  • UDP:

    1. 创建接收端和发送端
    2. 发送端:建立DatagremScoket对象,指定本方端口及ip;使用转换流获取输入要发送的内容,并且转换为字节;将内容打包,然后发送;
      接受端:建立DatagremScoket对象,监听端口,将接受到的数据包拆包(使用receive方法,此方法为阻塞式方法,)为字节数组。
原创粉丝点击