网络编程_开篇

我们身边每台电脑、每部手机、每个手持设备都叫网络上的一个节点。

比如说电脑,每个人都有一台电脑,电脑跟电脑之间组成一个网络,多台电脑之间组成一个网络,根据不同的区域我们分为大网络、小网络,也就是我们所谓的局域网、公网或者互联网。

电脑是如何交流的?通过地址!所以在这就有一个概念叫【IP地址】,每一台电脑都有自己的IP地址,当然这个IP地址是先从公网再到内网一 一作区分的,用IP地址去定位一台电脑、一个节点。

那我们每一台电脑里面有很多软件,比如淘宝、360、百度等等,那软件跟软件之间在同一台电脑里面如何区分?我怎么知道我在这里发的微信就到了你那里的微信了,而不是进到了你的支付宝里了?这里就有一个概念叫【端口】,端口是用于区分软件。这就相当于我们人,每个人都有自己的房间号,IP就相当于小区,端口就相当于房间号了。

房间里有很多人,有家庭成员。相当于每一台电脑上有不同的软件,每一个软件里又有不同的资源,那如何区分这个资源呢?这里有个概念叫【URL】,URL又叫【统一资源定位符】,区分互联网的每一个资源。比如百度里面那么多的网页我们就是通过URL进行区分的。相当于我们人,如果你要接收包裹,必须要先写你的小区,再写你的房间号,再写你的姓名,那URL也是一样。

现在我们的电脑有了IP地址,有了端口,有了URL,那么它们之间是怎么交流怎么通信的?比如说人跟人之间怎么交流,现在大家都用普通话,那这个普通话有什么好处,大家来自五湖四海都可以成为朋友就是因为普通话,只需要学习普通话就可以,所以人跟人之间有一个东西,叫【协议】,我们要想正确的交流,必须遵守某一个协议。中国人说中国话,英国人说英国话,所谓协议就是交流的方式更加畅通、更加规范、更加标准。那我们的资源所使用的协议就叫做【TCP和UDP】,当然普通话上面又有方言,那TCP和UDP上面也会进行区分,有http协议等。

TCP和UDP成为传输上的协议,它们有什么区别?可以想象一下打电话、发短信和写信之间的区别。打电话需要先连接才能说话,那如果要是写信呢?让你写一封信给十年后的自己,你不一定能收得到,有可能搬家了,所以UDP相当于写信,TCP相当于打电话,相比肯定TCP更安全,UDP不安全。

UDP虽然不安全,但是它高效,一边写一边丢;TCP必须先建立连接,不建立连接啥都做不了。UDP只管发还能做其他的事。现在基本都是二者的结合,比如视频聊天,第一步建立连接,建立完连接在视频的过程种发现有卡顿,有花点,不影响还可以继续聊。
因此,TCP它是安全的、面向连接的,UDP是不安全的,非面向连接的。UDP比较高效,TCP相比之下低效一些。

以上聊的都是网络编程,而不是网页编程,网页编程是后面要学的,比如JSP、servlet、js等,网络编程讲的是TCP和UDP,讲的是数据如何传输,讲的是底层,网页编程强调的是应用,比如说在服务器上写开发、写软件、写更高级的代码;网络编程简单来说就是写服务器,写数据怎么传输。
网络编程关注的是底层,关注的是传输,网页编程关注的是上一层的应用,应用开发。

网络编程也涉及到B/S和C/S的概念,B/S就是浏览器和服务器,C/S就是客户端和服务器。

它们的区别是:B/S在公网上,C/S在局域网上。比如说去网吧,你会发现计费系统在你的电脑上和前台的电脑上都装了,然后计费系统对你的电脑进行监控进行计费,这就是C/S模式。
B/S模式是我们通过浏览器访问阿里的网页、京东的网页等。
C/S模式,网吧的计费系统只能在你的网吧用,不能在其他地方用,自己给自己定格式。
B/S模式就不用也不能自己给自己定格式,因为浏览器的开发和【百度】的开发二者没什么关系,要正确的交流只需要通过协商好的格式,比如http协议,只需要按照这个协议去开发代码,大家就可以正常的交流。
C/S的格式、协议自己定,B/S是通过标准。
第二个区别:C/S的两端都需要自己做,B/S只需要关注自己这一端怎么写。
第三个区别:C/S所在的范围比较小,所以传输起来会比较快,B/S所在的范围比较大,传输起来比较慢。

目前我们关注的就是它们底层是如何传输的,关注的是电脑怎么定位,软件如何区分,网络资源如何获取,以及数据如何传输。也就是IP地址、端口、URL和TCP/UDP。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值