Java网络编程 - Java网络通信的支持机制

  • URL 层次 和 Socket层次
    • url 方式使得用户不需要考虑URL中的各种协议的处理过程,就可以直接获得URL资源信息。这种方式适用于访问Internet尤其是www上的资源,对ftp的支持也很好。
    • Socket表示应用程序与网络之间的接口,例如TCP Socket,UDP Socket。支持流和数据报两种通信过程。这种机制中,用户需要自己考虑通信双方约定的协议。
    • Java中支持url的类实际上也是依赖于下层Socket类实现的。
    • URL类,URLConnection类,Socket类和ServerSocket类都是用TCP实现网络通信;DatagramPacket类,DatagramSocket类,MulticastSocket类都支持UDP通信支持。
  • URL通信机制
  • Socket通信机制
    • Socket提供两种通信方式:有连接方式(TCP)和无连接方式(UDP数据报)。
    • 1.有连接通信方式
      • 有连接方式,通信双方在开始时必须进行一次连接过程,建立一条通信链路。通信链路提供了可靠的、全双工的字节流服务;
      • Socket有两个流:一个输出流,一个输入流;
      • 有链接通信一般经历下列四个基本步骤:
(1)创建Socket,建立连接;
(2)打开连接到Socket的输入/输出流;
(3)按照一定的协议对Socket进行读/写操作;
(4)关闭Socket。
  • 无连接通信协议
    • 用户数据报协议UDP是传输层的无连接通信协议;
    • 无连接方式中,通信双方不存在一个连接过程;
    • 数据报能否到达目的地,到达时间,以及到达时内容能否保持不变都是没有保证的;
    • 所以在不需要高质量通信时可以使用UDP;
    • 数据报方式的通信过程:
(1)创建数据报Socket;
(2)构造用于接收或者发送的数据报,并调用所创建的Socket的receive()方法进行数据报接收或调用send()发送数据报;
(3)通信结束,关闭Socket。
  • 基于数据报的多播通信
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 网络编程概述 1.1 计算机网络 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接...
    JackChen1024阅读 1,065评论 0 3
  • 网络概念第一天 两台电脑怎么通过网络传输数据?怎样才能知道传输的是数据?谁摸过网线? 看电影,怎么看的?通过电流,...
    小吖朱阅读 1,609评论 0 1
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,422评论 11 349
  • iOS网络HTTP、TCP、UDP、Socket 知识总结OSI 七层模型我们一般使用的网络数据传输由下而上共有七...
    蜗牛也有梦想阅读 2,491评论 0 3
  • Android新控件 DrawerLayout 顶层容器,通常与NavigationView实现侧滑菜单 Navi...
    qingsongwill阅读 679评论 0 0