SE网络编程-通信基础

Posted 清风吹拂啊狂风肆虐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SE网络编程-通信基础相关的知识,希望对你有一定的参考价值。

网络编程

网络通信的要素

  • 如何实现网络的通信?

    • ip
    • 端口号
    • 192.168.16.124:9892

    规则:

    • 网络模型分七层
    • 小结:
      • 网络编程中有两个主要问题
      • 如何准确的定位到网络上的一台或者多台主机
      • 找到主机如何进行通信

ip

ip地址:InetAddress

  • 唯一定位一台网络计算机(mac)
  • 127.0.0.1:本机localhost
  • ip地址的分类
    • ipv4/ipv6
      • IPV4 42亿
      • IPv6 fe91::f4f0:c6e4:b11se:2120%5s,128位,8个无符号证书
    • 公网-私网
      • 公网: ABCD类地址
      • 192.168.x.x ,专门给组织能不使用的
  • 域名:记忆IP问题
    • ip: www.vip.com 万网

端口

  • 一个端口表示程序的进程
    • 不同的进程有不同的端口号!用来区分软件
    • 被规定0-65535
    • TCP,UDP 65535*2 tcp:80 单个协议下端口不能冲突
    • 端口分类
      • 共有端口:0-1023
      • HTTP:80
      • HTTPS: 443
      • FTP: 21
      • Telet: 23
        程序注册端口: 1024-49151,分配各用户和程序
      • Tomcat: 8080
      • Mysql:3306
      • Oracle: 1521

端口映射:
一个程序比如QQ,和另一台主机的QQ,那么
主机1 QQ的端口1231,那么另一台主机的QQ端口2321
这两个端口可以进行通信

通信协议:

  1. 协议:约定
  2. 速率,传输速率,代码结构,传输控制
  3. TCP、IP协议簇
    • 用户传输协议
    • 用户数据报协议
      TCP/IP:
    • 一组协议


TCP:

  • 连接,稳定
  • 三次握手,4次挥手
  • 客户端,服务端

UDP:

  • 不进行连接,不稳定
  • 客户端,服务端:没有明确的界限
  • 不管是否准备好,都可以发给你
  • DDOS: 洪水攻击

以上是关于SE网络编程-通信基础的主要内容,如果未能解决你的问题,请参考以下文章

J2SE之Socket编程

J2SE 的 API 包含有类和接口

JAVA SE基础篇60.线程协作

Java SE 基础 Java的语言特点

34-网络编程

网络编程——基础知识