Java中的网络

网络

1.网络模型与协议

1.1OSI模型

OSI 七层模型 : 应用层,表示层,会话层,传输层,网络层,链路层,物理层
五层模型: 应用层, 传输层,网络层,链路层,物理层
四层模型 : 应用层, 传输层,网络层,链路层

**应用层:**http(超文本传输协议) ftp(文件传输协议) stmp (邮件发送协议) pop3(邮件接收协议), ssh ( 安全shell,用于远程登录)

传输层: tcp(安全可靠的协议) udp(不可靠)

**网络层:**ip

1.2 IP

ip 地址的作用是用来定位到网络上的另一台计算机

windows下可以使用 ipconfig来查看ip地址
linux 下可以使用 ifconfig来查看ip地址

port 端口

  1. mysql 3306
  2. oracle 1521
  3. sqlserver 1433
  4. redis 6379
  5. tomcat 8080
  6. apache(http的服务) 80
  7. ftp 21
  8. ssh 22
    端口号的作用是用来标记访问的是哪个程序

1.3 协议

传输层协议:
tcp协议:
TCP 协议的特点是: TCP 协议是一个有连接、可靠的协议。所谓有连接,指的是在进行 TCP通信之前,两个需要通信的主机之间要首先建立一条数据通道,就好像打电话进行交流之前,首先要让电话接通一样。所谓可靠,指的是 TCP 协议能够保证: 1、发送端发送的数据不会丢失; 2、接收端接受的数据包的顺序,会按照发送端发送的包的顺序接受。也就是说, TCP协议能够保证数据能够完整无误的传输。

udp协议:
与 TCP 协议相比, UDP 是一个无连接,不可靠的协议。 即:数据的发送方只负责将数据发送出去,数据的接受方只负责接受数据。发送方和接收方不会相互确认数据的传输是否成功。

tips:
相对于 TCP 而言, UDP 有一个优点:效率较高。因此,当我们在对数据传输的正确率不太关心,但是对传输效率要求较高的情况下,可以采用 UDP 协议。(使用 UDP 协议的典型是网络语音以及视频聊天应用)

2.java中的网络编程

Socket API 对tcp、udp协议做了封装,能够连接到对方主机,收发数据

tcp的例子:
服务器端:

public static void main(String[] args) throws IOException {
    // 可以与客户端的socket建立连接  端口号一般使用4位以上的数字
    ServerSocket ss = new ServerSocket(5555);
    System.out.println("ready...等待客户端连接");
    // 端点
    Socket socket = ss.accept();// 等待客户端连接我服务器方法,直到有客户端连接
}

客户端:

public static void main(String[] args) throws IOException {
    // 本机ip地址为 127.0.0.1
    // 它的别名     localhost
    // 端点
    Socket socket =
            new Socket("127.0.0.1", 5555);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值