Java网络编程----网络的相关概念

简介: Java网络编程----网络的相关概念

1. 网络通信

  1. 概念:两台设备之间通过网络实现数据传输
  2. 网络通信:将数据通过网络从一台设备传输到另一台设备
  3. java.net包下提供了一系列的类或接口,供程序员使用,完成网络通信

2. 网络

  1. 概念:两台或多台设备通过一定物理设备连接起来构成了网络
  2. 根据网络的覆盖范围不同,对网络进行分类:
  1. 局域网:覆盖范围最小,仅仅覆盖一个教室或一个机房
  2. 城域网:覆盖范围较大,可以覆盖一个城市
  3. 广域网:覆盖范围最大,可以覆盖全国,甚至全球,万维网是广域网的代表

3. ip 地址

  1. 概念:用于唯一标识网络中的每台计算机/主机
  2. 查看ip地址:
    在命令窗口输入
ipconfig
  1. ip地址的表示形式:点分十进制XX.XX.XX.XX
  2. 每一个十进制数的范围:0~255
  3. ip地址的组成=网络地址+主机地址,比如:192.168.16.69
  4. ilPv6是互联网工程任务组设计的用于替代IPv4的下一代IP协议,其地址数量号称可以为全世界的每一 粒沙子编上一个地址[1]。
  5. 由于IPv4最大的问题在于网络地址资源有限,严重制约了互联网的应用和发展。IPv6的使用,不仅能解决网络地址资源数量的问题,而且也解决了多种接入设备连入互联网的障碍

4. ipv4 地址分类

127.0.0.1表示本机地址

5. 域名

  1. 如:www.baidu.com
  2. 好处:为了方便记忆,解决记ip的困难
  3. 概念:将ip地址映射成域名,这里怎么映射上,HTTP协议
  4. 端口号:
  1. 概念:用于标识计算机上某个特定的网络程序
  2. 表示形式:以整数形式,端口范围0-65535 [2个字节表示端口0-2^16-1]
  3. 0~1024已经被占用,比如ssh 22, ftp 21, smtp 25 http 80
  4. 常见的网络程序端口号:
    tomcat :8080
    mysql:3306
    oracle:1521
    sqlserver:1433

6. 网络通信协议

协议(tcp/ip):

TCP/IP (Transmission Control Protocol / lnternet Protocol)的简写,中文译名为传输控制协议/因特网互联协议,又叫网络通讯协议,这个协议是lnternet最基本的协议、Internet国际互联网络的基础,简单地说,就是由网络层的IP协议和传输层的TCP协议组成的。

7. TCP 和 UDP

7.2 TCP协议:传输控制协议

  1. 使用TCP协议前,须先建立TCP连接,形成传输数据通道
  2. 传输前,采用""三次握手“方式,是可靠的
  3. TCP协议进行通信的两个应用进程:客户端、服务端
  4. 在连接中可进行大数据量的传输
  5. 传输完毕,需释放已建立的连接,效率低

7.2 UDP协议:用户数据协议

  1. 将数据、源、目的封装成数据包,不需要建立连接
  2. 每个数据报的大小限制在64K内,不适合传输大量数据
  3. 因无需连接,故是不可靠的
  4. 发送数据结束时无需释放资源(因为不是面向连接的),速度快
  5. 举例:发短信
相关文章
|
5天前
|
Java 机器人 大数据
如何在Java中进行网络编程:Socket与NIO
如何在Java中进行网络编程:Socket与NIO
|
1天前
|
设计模式 算法 Java
简单了解下Java中锁的概念和原理
Java的锁通过java代码实现,go语言的锁通过go实现,python语言的锁通过python实现。它们都实现的什么呢?这部分就是锁的定义和设计模式、算法、原理等一些理论上的东西。
9 1
|
1天前
|
Java API
Java网络编程实战指南与示例代码
Java网络编程实战指南与示例代码
|
2天前
|
Java Spring
Java中的网络编程实践指南
Java中的网络编程实践指南
|
3天前
|
小程序 Java 关系型数据库
基于Java网络商城系统设计和实现(源码+LW+调试文档+讲解等)
基于Java网络商城系统设计和实现(源码+LW+调试文档+讲解等)
|
5天前
|
Java 机器人 程序员
如何在Java中进行网络编程?
如何在Java中进行网络编程?
|
8天前
|
Java
【实战演练】JAVA网络编程高手养成记:URL与URLConnection的实战技巧,一学就会!
【6月更文挑战第22天】在Java网络编程中,理解和运用URL与URLConnection是关键。URL代表统一资源定位符,用于标识网络资源;URLConnection则用于建立与URL指定资源的连接。通过构造URL对象并调用openConnection()可创建URLConnection。示例展示了如何发送GET请求读取响应,以及如何设置POST请求以发送数据。GET将参数置于URL,POST将参数置于请求体。练习这些基本操作有助于提升网络编程技能。
|
9天前
|
Java 数据挖掘 开发者
Java网络编程进阶:Socket通信的高级特性与应用
【6月更文挑战第21天】Java Socket通信是分布式应用的基础,涉及高级特性如多路复用(Selector)和零拷贝,提升效率与响应速度。结合NIO和AIO,适用于高并发场景如游戏服务器和实时数据分析。示例展示了基于NIO的多路复用服务器实现。随着技术发展,WebSockets、HTTP/2、QUIC等新协议正变革网络通信,掌握Socket高级特性为应对未来挑战准备。
|
9天前
|
网络协议 安全 Java
Java网络编程入门涉及TCP/IP协议理解与Socket通信。
【6月更文挑战第21天】Java网络编程入门涉及TCP/IP协议理解与Socket通信。TCP/IP协议包括应用层、传输层、网络层和数据链路层。使用Java的`ServerSocket`和`Socket`类,服务器监听端口,接受客户端连接,而客户端连接指定服务器并交换数据。基础示例展示如何创建服务器和发送消息。进阶可涉及多线程、NIO和安全传输。学习这些基础知识能助你构建网络应用。
18 1
|
8天前
|
数据采集 Java 开发者
JAVA网络编程深度探索:URL与URLConnection的精湛技艺
Java网络编程核心在于URL和URLConnection。URL是资源的唯一标识,用于定位网络资源,支持解析、编码解码及参数操作。URLConnection则实现数据交换,允许GET/POST请求,可定制请求头、设置超时,是网络交互的关键。两者结合,适用于网络爬虫等场景,深入学习能提升编程技巧并揭示网络编程奥秘。