Java网络的知识概要

1.网络编程是底层数据的交换,网页编程是服务器与客服端数据交换。

2.网络是由节点和连线构成,表示诸多对象及其相互联系。它将不同地域的计算机连在一起。
按覆盖范围分为:
局域网LAN(作用范围一般为几米到几十公里)。
城域网MAN(界于WAN与LAN之间)。
广域网WAN(作用范围一般为几十到几千公里)。

传输介质 按通信方式分类:
点对点传输网络、广播式传输网络

3.网络四要素
1)、通信线路和通信设备;
2)、有独立功能的计算机;
3)、网络软件支持;
4)、实现数据通信与资源共享

4.IP地址(标识计算机网络地址):是一个32位二进制数的地址,由4个8位字段组成,每个字段之间用点号隔开,用于标识TCP/IP宿主机。
每个IP地址都包含两部分:网络ID和主机ID。网络ID标识在同一个物理网络上的所有宿主机,主机ID标识该物理网络上的每一个宿主机,于是整个Internet上的每个计算机都依靠各自唯一的IP地址来标识。

5.静态IP与动态IP
拨号用户每次自动获得一个动态的IP地址,在每次连接时间内IP地址不变。

6.端口号:区分计算机软件,计算机应用程序,占用2个字节, 0~65535
同一协议下,端口号不能重复,不同协议下可以重复。1024以下端口不要使用,预留的端口号。

7.URL(统一资源定位符)与URI(统一资源标识符)
URL既包括资源,也可以进行定位。
URI,是uniform resource identifier,统一资源标识符,用来唯一的标识一个资源。而URL是uniform resource locator,统一资源定位器,它是一种具体的URI,即URL可以用来标识一个资源,而且还指明了如何locate这个资源。
www.cnblogs.com/gaojing/archive/2012/02/04/2413626.html

8.数据的传输:
传输协议:比如TCP UDP等,(底层是流传输)
传输:先封装,后拆封

9.TCP与UDP
TCP 类似打电话  先连接 ,后通讯   可靠性高,效率低
UDP 类似短信 不用连接 ,可靠性低,效率高
www.cnblogs.com/bizhu/archive/2012/05/12/2497493.html

10.UDP客户端与服务器端
Udp客户端(和服务器端用同样的类)
1) 创建客户端+端口
2) 准备数据
3) 打包(指定服务器端的地址及端口)
4)发送
5)释放

UDP 服务器端
1)创建服务器+端口
2)准备接收的容器
3)封装成包
4)接收数据
5)分析数据
6)释放资源

11.UDP协议中因为数据包只能是字节数组,所以对于java任意类型,需要进行类型转换
可使用DataInputStream ,DateOutputSteam 进行转换

DataInput 接口用于从二进制流中读取字节,并根据所有 Java 基本类型数据进行重构。
DataOutput 接口用于将数据从任意 Java 基本类型转换为一系列字节,并将这些字节写入二进制流。

12.网络底层数据传输使用到了流,网上下载使用了流,用浏览器打开网页,便是从服务器上下载源代码,然后再到浏览器上打开。

13.爬虫原理:就是在网页上根据指定的条件去抓取数据,下载数据。

14.C/S与B/S
C/S结构,即Client/Server(客户机/服务器)结构
B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构

C/S 主要用于局域网,而B/S用于广域网,B/S需要遵循相关的协议,而C/S是客户写的程序,只要遵循自己定义的协议即可。C/S 一般面向相对固定的用户群, 对信息安全的控制能力很强.B/S 建立在广域网之上, 对安全的控制能力相对弱, 面向是不可知的用户群. 
www.cnblogs.com/mfryf/archive/2012/02/13/2349750.html

15.网络上的两个程序通过一个双向的通讯连接实现数据的交换,这个双向链路的一端称为一个Socket。Socket通常用来实现客户方和服务方的连接。Socket是TCP/IP协议的一个十分流行的编程界面,一个Socket由一个IP地址和一个端口号唯一确定。

16.浏览器是基于tcp、http的客户端。

17.服务器端与客户端的输入输出流要对应,如客服端使用DataOutputSteam输入数据,服务器端就需要对应的DataInputStream去接收。

18.表单进行数据传递时,
get方式  数据量少  相对不安全
post方式  数据量大  相对安全
表单中  name(传到后端对应参数) id 前端标签唯一标识 

19.HTTP 遵循 request(请求)/response(应答) 模型
是网络应用层的协议,建立在TCP/IP协议基础上。HTTP协议使用可靠的
TCP连接,默认端口为80.

20.web浏览器是常见的HTTP客户端。

21 .HTTP请求与HTTP响应
HTTP请求格式:
(1)请求方法  URL协议/版本
(2)请求头
(3)请求正文(post方式)

HTTP响应格式:
(1)HTTP协议版本、状态代码、描述
(2)响应头
(3)响应正文

22.ip地址划分  ip表示:  a.b.c.d
A类地址:a<128  b,c,d 表示主机
B类地址: 128= C类地址:192 =< a <224  a,b,c表示网络 ,d表示主机
D类地址:224<= a <239 
D类地址与E类地址为 组播地址和预留地址

广播地址:主机标识段host ID 为全1 的IP 地址为广播地址
如本机ip192.168.0.101 属于c类地址,最后一位表示主机,所以广播地址为192.168.0.255

23.java中单播与广播的代码相同,只是广播加上广播地址
组播使用MultiCastSocket实例进行通信,它是DatagramSocket的是一个子类.
如果是发送数据报包,可以不加入多播组; 如果是接收数据报包,必须加入多播组; 这里是接收数据报包,所以必须加入多播组;
joinGroup(InetAddress mcastaddr)
leaveGroup(InetAddress mcastaddr)

24.UDP 使用DatagramSocket创建客户端、服务器端,使用DatagramPacket进行打包
TCP 使用ServletSocket、Socket创建服务端、客户端。

25。单播:单台主机与单台主机之间的通信;
广播:单台主机与网络中所有主机的通信;
组播:单台主机与选定的一组主机的通信;

你可能感兴趣的:(Java,网络编程,java,udp,tcp)