时间:2021-07-01 10:21:17 帮助过:11人阅读
Java 网络编程 建立在TCP/IP协议基础上,致力于实现应用层。传输层向应用层提供了套接字Socket接口,它封装了下层的数据传输细节;应用层的程序通过Socket与远程主机建立连接和进行数据传输。 TCP TCP是Tranfer Control Protocol的 简称,是一种面向连接的保
Java网络编程建立在TCP/IP协议基础上,致力于实现应用层。传输层向应用层提供了套接字Socket接口,它封装了下层的数据传输细节;应用层的程序通过Socket与远程主机建立连接和进行数据传输。
TCP是Tranfer Control Protocol的 简称,是一种面向连接的保证可靠传输的协议。通过TCP协议传输,得到的是一个顺序的无差错的数据流。发送方和接收方的成对的两个socket之间必须建 立连接,以便在TCP协议的基础上进行通信,当一个socket(通常都是server socket)等待建立连接时,另一个socket可以要求进行连接,一旦这两个socket连接起来,它们就可以进行双向数据传输,双方都可以进行发送 或接收操作。
UDP是User Datagram Protocol的简称,是一种无连接的协议,每个数据报都是一个独立的信息,包括完整的源地址或目的地址,它在网络上以任何可能的路径传往目的地,因此能否到达目的地,到达目的地的时间以及内容的正确性都是不能被保证的。
1.每个数据报中都给出了完整的地址信息,因此无需要建立发送方和接收方的连接。
2.UDP传输数据时是有大小限制的,每个被传输的数据报必须限定在64KB之内。
3.UDP是一个不可靠的协议,发送方所发送的数据报并不一定以相同的次序到达接收方。
1.面向连接的协议,在socket之间进行数据传输之前必然要建立连接,所以在TCP中需要连接时间。
2.TCP传输数据大小限制,一旦连接建立起来,双方的socket就可以按统一的格式传输大的数据。
3.TCP是一个可靠的协议,它确保接收方完全正确地获取发送方所发送的全部数据。
java.net.Socket,java.netServerSocket建立在TCP协议基础上。
java.net.DatagramSocket建立在UDP协议基础上。
输出流,用以发送数据
- //创建服务器进程
- ServerSocket serverSocket = new ServerSocket(port);
- //监听来自客户端的请求
- soc = serverSocket.accept();
- //构造数据输入流,用以接收数据
- DataInputStream in = new DataInputStream(soc.getInputStream());
- //构造数据
输出流,用以发送数据
- //创建客户端Socket
- Socket soc = new Socket(serverHost,port);
- //构造数据输入流,用以接收数据
- DataInputStream in = new DataInputStream(soc.getInputStream());
- //构造数据
原文地址:深入解析MapReduce架构设计与实现原理–读书笔记(7)hadoop 网络编程, 感谢原作者分享。