首页 > 编程语言 >没有网络编程就拿不下小美

没有网络编程就拿不下小美

时间:2024-09-27 22:51:46浏览次数:3  
标签:小美 IP 编程 端口 网络 不下 IP地址 连接

一入Java情几许?大家好,我是深山夕照深秋雨。

网络编程和我们的生活息息相关。它可以让设备中的程序与网络上其他设备中的程序进行数据交互。你与小美在微信上的聊天,就要依赖网络编程来实现。

基本的通信架构有2种形式:CS架构( Client客户端/Server服务端 )——WeChat 、 BS架构(Browser浏览器/Server服务端)——网页版的京东,淘宝等等一大堆。无论是CS还是BS,都必须依赖网络编程。

网络通信三要素包括IP地址、端口号和协议。IP是设备在网络中的地址,是唯一的标识。端口是应用程序在设备中唯一的标识。协议是连接和数据在网络中传输的规则。

一、IP

IP(Internet Protocol):全称”互联网协议地址”,是分配给上网设备的唯一标志。 IP地址有两种形式:IPv4、IPv6

IPv4:共32位,采用点分十进制表示法:192.168.1.66,每个点代表跨越八位

IPv6:共128位,号称可以为地球每一粒沙子编号,包括你给小美打的每个字。IPv6分成8段表示,每段每四位编码成一个十六进制位表示, 数之间用冒号(:)分开。采用冒分十六进制 表示法:2001:0db8:0000:0023:0008:0800:200c:417a

IP有两种

公网IP:是可以连接互联网的IP地址;内网IP:也叫局域网IP,只能组织机构内部使用。 192.168. 开头的就是常见的局域网地址,范围即为192.168.0.0--192.168.255.255,专门为组织机构内部使用。

特殊IP地址: 127.0.0.1、localhost:代表本机IP,只会寻找当前所在的主机。

IP常用命令: ipconfig:查看本机IP地址。 ping IP地址:检查网络是否连通。

二、端口

端口是用来标记正在计算机设备上运行的应用程序的,被规定为一个 16 位的二进制,范围是 0~65535。

分类

周知端口:0~1023,被预先定义的知名应用占用(如:HTTP占用 80,FTP占用21)

注册端口:1024~49151,分配给用户进程或某些应用程序。

动态端口:49152到65535,之所以称为动态端口,是因为它 一般不固定分配某种进程,而是动态分配。

注意:我们自己开发的程序一般选择使用注册端口,且一个设备中不能出现两个程序的端口号一样,否则出错

三、协议

网络上通信的设备,事先规定的连接规则,以及传输数据的规则被称为网络通信协议。

OSI网络参考模型:全球网络互联标准;TCP/IP网络模型:事实上的国际标准。

传输层的2个通信协议:UDP(User Datagram Protocol):用户数据报协议; TCP(Transmission Control Protocol) :传输控制协议。

UDP协议

特点:无连接、不可靠通信。

不事先建立连接,数据按照包发,一包数据包含:自己的IP、程序端口,目的地IP、程序端口和数据(限制在64KB内)等。

发送方不管对方是否在线,数据在中间丢失也不管,如果接收方收到数据也不返回确认,故是不可靠的 。

优点:通信效率高       

应用:语言通话,视频直播

TCP协议

特点:面向连接、可靠通信。

TCP的最终目的:要保证在不可靠的信道上实现可靠的传输。

TCP主要有三个步骤实现可靠传输:三次握手建立连接,传输数据进行确认,四次挥手断开连接。

三次握手:客户端发出连接请求;服务器端返回一个响应;客户端再次发出确认信息,连接建立。

举个栗子:你问小美谈不谈;小美说谈;你说好。于是两人关系建立

那么为什么要有三次握手建立连接呢?这是为了保证确定通信双方,收发消息都是正常无问题的!如果小美不想谈,你自己单相思又有什么用呢?小美答应你了,你是不是也要再次确认,万一你不是认真的呢。

而传输数据会进行确认,这是为了保证数据传输的可靠性。你送给小美的礼物,她在收到之后会跟你说收到了,如果你在一段时间内没有收到确认,是不是就觉得小美是不是没收到,地址是不是写错啦,就要重新再送了。

四次握手断开连接:客户端发出断开连接请求服务器端返回一个响应:稍等服务器端:返回一个响应:确认断开客户端发出正式确认断开连接。

你们之间的感情走到尽头之后,小美和你说该分手了;你做了最后一次挽留,发现并没有用;最后你说,好吧,分手就分手;小美正式确认分手,你们两个就这样断开了连接。

客户端也能接收数据,服务端也可以发送数据。就像你总是追求别人,有一天你受到别人的欣赏和喜欢,这也是正常的。所谓凡我所失,皆非我所属,凡我所求,皆受其所困。

好了,今天就先聊到这里,说永远太久的话,那就明天见!

标签:小美,IP,编程,端口,网络,不下,IP地址,连接
From: https://blog.csdn.net/weixin_72952570/article/details/142464318

相关文章

  • 三篇文章速通JavaSE到SpringBoot框架 (中) IO 进程线程 网络编程 XML MySQL JDBC相关
    文章目录IOfile类的作用I/O的作用将上篇文章综合项目使用IO流升级所需知识点进程线程创建线程的三种方式网络编程网络编程介绍IP地址端口号网络通信协议网络通信协议的分层演示代码XMLXML的作用是什么?xml特点注解什么是注解?注解的使用注解的重要性注解的使用实例M......
  • 网络编程Day01
    网络编程概述地球村信件计算机网络:计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统网络编程的目的:无线电台---传播交流信息,数据交换......
  • 【蓝桥杯】“萌新首秀”全国高校新生编程排位赛2
    1.世上有10种人题目世上有10种人 代码#includeusingnamespacestd;intmain(){cout<<2;return0;}2.01切换题目01切换 题目分析直接判断字符串最后一个字符是0还是1就好了代码#includeusingnamespacestd;intmain(){stringstr;cin>>st......
  • java+vue计算机毕设编程类题目在线评测系统【源码+程序+论文+开题】
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展和在线教育的普及,编程教育已成为培养未来科技人才的重要基石。然而,传统的编程教学模式往往受限于时间和空间的限制,难以高效、......
  • 数据结构编程实践20讲(Python版)—02链表
    本文目录02链表linked-listS1说明S2示例单向链表双向链表循环链表S3问题:反转单向链表求解思路Python3程序S4问题:双向链表实现历史浏览网页求解思路Python3程序S5问题:基于循环链表的玩家出牌顺序求解思路Python3程序往期链接01数组02链表linked-lis......
  • 防御性编程:让系统坚不可摧
    1.引言面对复杂多变的运行环境、不可预测的用户输入以及潜在的编程错误,如何确保软件在遭遇异常情况时依然能够稳定运行,是每位开发者必须面对的挑战。防御性编程(DefensiveProgramming)正是为解决这一问题而生的一种编程范式,它强调在编程过程中预见并防范潜在的错误和异常情况,从......
  • 高级QML编程技巧
    高级QML编程技巧使用AI技术辅助生成QT界面美化视频课程QT性能优化视频课程QT原理与源码分析视频课程QTQMLC++扩展开发视频课程免费QT视频课程您可以看免费1000+个QT技术视频免费QT视频课程QT统计图和QT数据可视化视频免费看免费QT视频课程QT性能优化视频免费看......
  • TCP编程:从入门到实践
    本文将带领大家了解TCP编程的基本概念、原理及其在实战中的应用。通过学习本文,读者可以掌握TCP编程的核心技术,并在实际项目中熟练运用。一、引言TCP(传输控制协议)是一种面向连接、可靠、基于字节流的传输层通信协议。在互联网、局域网等网络环境中,TCP编程具有广泛的应用。掌握......
  • 学编程难吗?多久能入门?
    当然,让我们继续补充并深化这篇文章的内容,探讨学习编程过程中的一些关键要素和心态调整。学习编程的心态调整学习编程不仅仅是掌握一门技术,更是一场心态的修行。在这个过程中,你可能会遇到各种挑战和挫折,比如代码bug难以解决、项目进展缓慢、新知识层出不穷等。面对这些困难,保......
  • ncurses编程资料
    资料NCURSESProgrammingHOWTO中文手册NCURSESProgrammingHOWTO英文手册NCURSES-Programming-HOWTO.pdfWritingProgramswithNCURSESGuidetoNcursesProgrammingcurses_tutorialconsole_codes......