网络通信原理
- 找到对方IP
- 数据要发送到对方指定的应用程序上。为了标识这些应用程序,所以给这些网络应用程序都用数字进行标识。为了方便称呼这个数字,叫做端口。逻辑端口。
- 定义通信规则。这个通讯规则称为协议。国际组织定义了通讯协议TCP/IP。
网络模型
- OSI参考模型
- TCP/IP参考模型
- IP地址 :InteAddress
-
- 网络中设备的标识
- 不易记忆,可用主机名
- 本地会还地址: 127.0.0.1 主机名:localhost
- 端口号
-
- 用于标识进程的地址,不同进程的标识。
- 有效的端口:0~65535,其中0~1024系统使用或保留端口。
- 传输协议
-
- 通讯的规则
- 常见协议
-
- UDP
-
- 将数据及源和目的封装成数据包中,不需要建立连接。面向无连接。
- 每个数据包的大小限制在64k内。
- 因为无连接,是不可靠协议。
- 不需要建立连接,速度快。
- TCP
-
- 建立连接,形成传输数据的通道。
- 在连接中进行大数据量传输。
- 通过三次握手完成连接,是可靠协议。
- 必须建立连接,效率会稍低。
Socket
Socket好比货物运输中的码头。货物在两个码头之间进行运输。也可比喻句数据传输的插座。
Socket好比货物运输中的码头。货物在两个码头之间进行运输。也可比喻句数据传输的插座。
- Socket就是为网络服务提供的一种机制。
- 通信的两端都有Socket。
- 网络通信其实就是Socket间的通信。
- 数据在两个Socket间通过IO传输。
网络段地址:192.168.1.0
广播地址: 192.168.1.255
URL
域名解析
- 根据客户端发送的域名查找本地文件C:\Windows\System32\drivers\etc\hosts 是否有相对应的主机ip如果有则直接执行步骤4,否则执行步骤2。
- 根据客户端的发送的域名访问公网DNS服务器。
- 公网DNS服务器将发送来的域名进行解析找到相应的主机IP地址返回给客户端。
- 客户端根据本地配置文件或公网DNS服务器返回的主机IP地址进行访问目标服务器。
注:如果想屏蔽某些网站或者防止软件进行访问更新的话可在C:\Windows\System32\drivers\etc\hosts 文件下修改它访问的主机名对应的IP地址。
相关推荐
Java网络编程案例教程习题参考答案 Java_network_programming是Java编程语言中一个基础组件,用于实现网络通信。以下是Java网络编程案例教程习题参考答案中涉及到的知识点: 1. Socket编程:Socket是Java网络编程...
Java网络编程是Java开发中的重要领域,它涵盖了网络应用程序的设计、实现和调试。在这个主题下,我们可以探讨多个关键知识点: 1. **Java Socket编程**:Java的Socket类提供了基于TCP/IP协议的网络通信能力。通过...
《Java网络编程(第四版)》是一本深入探讨Java在互联网环境下的编程技术的经典书籍。本书旨在帮助读者理解和掌握如何利用Java语言进行高效、安全的网络通信。书中内容覆盖了从基本的网络概念到复杂的多线程编程,是...
Java网络编程是计算机科学中的一个重要领域,特别是在软件开发中,它涉及到如何通过网络进行数据传输和通信。在Java中,网络编程主要依赖于Java的Socket编程、ServerSocket、URL类以及NIO(非阻塞I/O)等核心API。这...
"Java网络编程实验报告" 本实验报告主要介绍了Java网络编程的基本概念和实现方法,通过设计和实现一个简单的客户端/服务器应用程序,了解Java网络编程的基本原理和实现方法。 知识点1:Java 网络编程基础 Java ...
《Java网络编程(第4版)》是一本深入探讨Java平台上的网络编程技术的专业书籍,适合想要提升Java通讯技术的学者阅读。此书全面覆盖了Java网络编程的基础和高级概念,帮助开发者理解如何利用Java语言构建高效、可靠的...
Java网络编程
Java 网络编程实践课程设计报告 这是一份 Java 网络编程实践课程设计报告,旨在帮助学生掌握 Java 编程语言、图形化界面、多线程、网络和数据库等技术,并提高动手实践能力和书本知识学习。该课程设计报告涵盖了 ...
Java网络编程是开发分布式应用程序的关键技术,它允许程序通过网络发送和接收数据。《Java网络编程实例》这本书的源代码提供了丰富的示例,帮助读者深入理解这一领域。本压缩包包含的源代码覆盖了Java网络编程的各种...
《Java网络编程精解》是孙卫琴老师的一本经典教程,主要涵盖了Java语言在网络编程领域的深度解析。这本书深入浅出地介绍了如何使用Java进行网络通信,包括基本的TCP/IP协议、套接字编程、多线程技术以及HTTP、FTP等...
Java网络编程是开发分布式应用程序的关键技术,它使得Java程序能够与其他设备、系统和服务进行通信。本书《Java网络编程实例:Java网络编程实例》显然聚焦于通过实际案例来教授这一核心技能。以下是一些主要的知识点...
java网络编程.pdf
Java网络编程是开发分布式应用程序的关键技术,它允许Java程序与其他计算机进行通信,实现数据的交换。这份"Java网络编程资料"包含三个重要的学习资源:关于Socket套接字的"Java套接字编程.chm"、关于网络协议特别是...
本资源为"Java网络编程.chm",是一本关于Java网络编程的电子书,以实例驱动的方式深入讲解了相关知识。 首先,我们要理解Java在网络编程中的基础——IO流。Java中的IO流分为字节流和字符流,它们用于读写数据,包括...
Java网络编程是Java开发中的重要领域,它涵盖了网络通信的所有基本概念和技术,包括TCP/IP协议栈、套接字(Socket)编程、多线程、数据传输格式等。孙卫琴的《java网络编程》一书深入浅出地讲解了这些核心概念,并...
《JAVA网络编程大全》是一本全面且深入介绍Java网络编程技术的权威著作,旨在帮助读者掌握Java在构建网络应用程序中的核心概念和实践技巧。PDF版的书籍为学习者提供了便捷的电子阅读体验,随时随地都能深化对Java...
Java网络编程是Java开发中的重要领域,主要用于实现应用程序之间的通信,包括客户端-服务器架构、分布式系统以及互联网数据传输。这份“java网络编程 PPT”来自清华大学,无疑为学习这一主题提供了权威的参考资料。...
《Java网络编程》是编程领域的经典著作,尤其对于学习Java网络编程的初学者及进阶者来说,这本书具有很高的参考价值。它详细介绍了如何利用Java语言进行网络通信,涵盖了网络编程的基本概念、协议以及实现方法。 一...