服务器端

TCP/IP、Http、Socket的区别

怎甘沉沦 提交于 2020-02-22 03:22:46
 网络由下往上分为   物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。   通过初步的了解,我知道IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层,   三者从本质上来说没有可比性,   socket则是对TCP/IP协议的封装和应用(程序员层面上)。   也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,   而HTTP是应用层协议,主要解决如何包装数据。   关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:   “我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容。   如果想要使传输的数据有意义,则必须使用到应用层协议。   应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定义应用层协议。   WEB使用HTTP协议作应用层协议,以封装HTTP文本信息,然后使用TCP/IP做传输层协议将它发到网络上。”   而我们平时说的最多的socket是什么呢,实际上socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API)。   通过Socket,我们才能使用TCP/IP协议。   实际上,Socket跟TCP/IP协议没有必然的联系。   Socket编程接口在设计的时候,就希望也能适应其他的网络协议

利用Delphi编写Socket通信程序2

|▌冷眼眸甩不掉的悲伤 提交于 2020-02-20 14:13:35
  笔者在工作中遇到对局域网中各工作站与服务器之间进行Socket通信的问题。现在将本人总结出来的TServerSocket和TClientSocket两个组件的基本用法写出来,希望与您分享。   ClientSocket组件为客户端组件。它是通信的请求方,也就是说,它是主动地与服务器端建立连接。   ServerSocket组件为服务器端组件。它是通信的响应方,也就是说,它的动作是监听以及被动接受客户端的连接请求,并对请求进行回复。   ServerSocket组件可以同时接受一个或多个ClientSocket组件的连接请求,并与每个ClientSocket组件建立单独的连接,进行单独的通信。因此,一个服务器端可以为多个客户端服务。   设计思路   本例包括一个服务器端程序和一个客户端程序。客户端程序可以放到多个计算机上运行,同时与服务器端进行连接通信。   本例的重点,一是演示客户端与服务器端如何通信;二是当有多个客户端同时连接到服务器端时,服务器端如何识别每个客户端,并对请求给出相应的回复。为了保证一个客户端断开连接时不影响其它客户端与服务器端的通信,同时保证服务器端能够正确回复客户端的请求,在本例中声明了一个记录类型:    type  client_record=record  CHandle: integer; //客户端套接字句柄  CSocket

拥抱变化——从Atlas到ASP.NET AJAX(4):大大简化的了的Extender扩展器控件

☆樱花仙子☆ 提交于 2020-02-19 06:54:05
阅读本文之前,您需要安装完成 Microsoft ASP.NET AJAX v1.0 Beta (详见 拥抱变化 —— 从 Atlas 到 ASP.NET AJAX ( 1 ):下载安装总览 )。安装完成之后, Visual Studio 中新建 Web Site 的时候会多出一个模版: ASP.NET AJAX Enabled Web Site 。接下来的内容均将基于新建的 ASP.NET AJAX Enabled Web Site 。 摘要 在 ASP.NET AJAX 中,Extender Control(扩展器控件)同样很重要。如果说UpdatePanel只是将Ajax的核心概念和基本特性——局部更新和异步回送引入了ASP.NET的话,那么扩展器控件则在这个基本特性上迈出了新的一步——为页面添加丰富的客户端功能,让用户一眼就能够看出来:噢,这个网站真的太“Ajax”了! 本文将分析相对于从 Atlas到 ASP.NET AJAX 中 扩展器 控件使用方法的变化。 扩展器控件介绍 ASP.NET AJAX提供了两种内建的扩展器控件:DragOverlayExtender和AutoCompleteExtender,前者让用户可以将页面中的某个部分在其中任意拖动并排布,而后者可以为某个TextBox添加自动完成的功能。这样,该TextBox将拥有类似浏览器地址栏的行为

关于C#对Xml数据解析

邮差的信 提交于 2020-02-18 13:26:39
首先进行简单说明Xml 与Html 和 XAML数据标签的差别。 1.Xml属于数据文本, 被设计为传输和存储数据,其焦点是数据的内容。它与json格式数据相似,可作为服务数据传输类型。 其中XML是标准通用标记语言 (SGML) 的子集,非常适合 Web 传输。XML 提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。 (1).XML的优缺点 <1>.XML的优点   A.格式统一,符合标准;   B.容易与其他系统进行远程交互,数据共享比较方便。 <2>.XML的缺点   A.XML文件庞大,文件格式复杂,传输占带宽;   B.服务器端和客户端都需要花费大量代码来解析XML,导致服务器端和客户端代码变得异常复杂且不易维护;   C.客户端不同浏览器之间解析XML的方式不一致,需要重复编写很多代码;   D.服务器端和客户端解析XML花费较多的资源和时间。 (2).JSON的优缺点 <1>.JSON的优点:   A.数据格式比较简单,易于读写,格式都是压缩的,占用带宽小;   B.易于解析,客户端JavaScript可以简单的通过eval()进行JSON数据的读取;   C.支持多种语言,包括ActionScript, C, C#, ColdFusion, Java, JavaScript, Perl, PHP, Python, Ruby等服务器端语言

拥抱变化——从Atlas到ASP.NET AJAX(3):“仁慈”的UpdatePanel

独自空忆成欢 提交于 2020-02-17 22:41:45
阅读本文之前,您需要安装完成 Microsoft ASP.NET AJAX v1.0 Beta (详见 拥抱变化 —— 从 Atlas 到 ASP.NET AJAX ( 1 ):下载安装总览 )。安装完成之后, Visual Studio 中新建 Web Site 的时候会多出一个模版: ASP.NET AJAX Enabled Web Site 。接下来的内容均将基于新建的 ASP.NET AJAX Enabled Web Site 。 在 ASP.NET AJAX 中,相对于 ScriptManager 翻天覆地的变化, UpdatePanel 的变化要“友善”得多,也较为易于理解。 UpdatePanel 将仍作为最重要 ASP.NET AJAX 服务器端控件存在于 ASP.NET AJAX 核心组件( Microsoft ASP.NET AJAX v1.0 Beta )中,用于让页面中的某个局部内容拥有异步更新的功能。 本文将分析相对于 Atlas , ASP.NET AJAX 中 UpdatePanel 控件使用方法的变化。 ScriptManager的设定 和 Atlas 一样, ScriptManager 的 EnablePartialRendering 属性也要设置为 true ,但这已经是 ASP.NET AJAX 中的默认设置,我们一般无须再手工干预。另外,

TCP的套接字的socket通信

≯℡__Kan透↙ 提交于 2020-02-17 06:46:48
TCP的套接字的socket通信 本篇主要通过实现TCP的套接字通信例程介绍套接字基础知识。 一、概念 套接字:TCP用主机的IP地址加上主机上的端口号作为TCP连接的端点,这种端点,就叫做套接字(socket)或插口。套接字用(IP地址:端口号)表示。 生成套接字的三个主要参数:通信的目的IP地址,使用传输层协议(TCP或UDP)和使用的端口。socket原意为插座,通过这三个参数与另一个插座(socket)绑定,应用层和传输层就可以通过套接字接口,区分来自不同应用程序或网络通信,实现数据传输的并发服务。 任务与任务之间的通信节点。要通过套接字进行通信,至少需要一对套接字,一个运行于客户机端,称之为ClinetSocket,另一个运行于服务器端,称之为ServerSocket。 简单的来说,我们需要套接字这个桥梁来实现客户端和服务器端的通信。 二、TCP套接字通信流程 服务器端: 1.创建套接字( socket ) 2.将套接字绑定到本地地址和端口上( bind ) 3.将套接字的状态设置为监听状态( listen ) 4.接受连接请求,并且得到用于通信的套接字( accept ) 5.使用接受连接请求后得到的套接字进行通信( send/recv ) 6.通信完毕,释放套接字( close ) 客户端: 1.创建套接字( socket ) 2.向服务器端发起连接请求(

Coap协议学习:1-有关概念

冷暖自知 提交于 2020-02-16 10:43:40
COAP协议简介 不像人接入互联网的简单方便,由于物联网设备大多都是资源限制型的,有限的CPU、RAM、Flash、网络宽带等。对于这类设备来说,想要直接使用现有网络的TCP和HTTP来实现设备实现信息交换是不现实的。于是为了让这部分设备能够顺利接入网络,CoAP协议(详细规范定义在 RFC 7252)就被设计出来了。 Coap(Constrained Application Protocol)是一种在物联网世界的类web协议,COAP名字翻译来就是“受限应用协议”,顾名思义,使用在资源受限的物联网设备上。 Constrained Application Protocol (CoAP) is a specialized Internet Application Protocol for constrained devices, as defined in RFC 7252 . It enables those constrained devices called "nodes" to communicate with the wider Internet using similar protocols. CoAP is designed for use between devices on the same constrained network (e.g., low-power,

web前端开发工程师 百度百科

你。 提交于 2020-02-16 09:53:39
Web 前端开发工程师 是一个很新的职业,在国内乃至国际上真正开始受到重视的时间不超过5年。Web前端开发是从网页制作演变而来的,名称上有很明显的时代特征。在互联网的演化进程中,网页制作是Web 1.0时代的产物,那时网站的主要内容都是静态的,用户使用网站的行为也以浏览为主。 简介 2005年以后,互联网进入Web 2.0时代,各种类似桌面 软件 的Web应用大量涌现,网站的前端由此发生了翻天覆地的变化。网页不再只是承载单一的文字和图片,各种富媒体让网页的内容更加生动,网页上软件化的交互形式为用户提供了更好的使用体验,这些都是基于前端技术实现的。   随着Web 2.0概念的普及和W3C组织的推广,网站重构的影响力正以惊人的速度增长。XHTML+CSS布局、DHTML和Ajax像一阵旋风,铺天盖地席卷而来,包括新浪、搜狐、网易、腾讯、淘宝等在内的各种规模的IT企业都对自己的网站进行了重构。 为什么它们会对自己的网站进行重构呢?有两个方面的原因:  第一,根据W3C标准进行重构后,可以让前端的代码组织更有序,显著改善网站的性能,还能提高可维护性,对搜索引擎也更友好; 第二,重构后的网站能带来更好的用户体验,用XHTML+CSS重新布局后的页面,文件更小,下载速度更快。网站重构的目的仅仅是为了让网页更符合Web标准吗?不是!重构的本质是构建一个前端灵活的MVC框架

讲一讲TCP的四次挥手?

限于喜欢 提交于 2020-02-16 01:03:17
讲一讲TCP的四次挥手? 第一次挥手 :客户端发送一个FIN,用来关闭客户端到服务器端的数据传送,客户端进入FIN_WAIT_1状态。 第二次挥手 :服务器端收到FIN后,发送一个ACK给客户端,确认序号为收到的序号+1(与SYN相同,FIN只占用一个序列号),服务器端进入COLSE_WAIT状态。 第三次挥手 :服务器端发送一个FIN,用来关闭服务器端到客户端的数据传送,服务器端进入LAST_ACK状态。 第四次挥手 :客户端接收到FIN后,客户端进入TIME_WAIT状态,接着发送一个ACK给服务器端,确认序号为收到的序号+1,服务器端进入CLOSED状态,完成四次挥手。 面试题: 为什么要有TIME_WAIT状态? 确保有足够的时间让对方收到ACK包,避免新旧连接混淆。 什么情况下服务器会出现大量的CLOSE_WAIT状态? 当很多客户端大量请求然后关闭Socket连接,服务器方忙于读或写,没有及时关闭连接。 来源: CSDN 作者: 黄机智! 链接: https://blog.csdn.net/weixin_43813004/article/details/104297352

web相关概念

大憨熊 提交于 2020-02-13 21:02:41
1.软件架构 (1)c/s客户端/服务器端(客户端需要下载相应的应用程序去访问服务器端的程序) (2)b/s浏览器端/服务器端(只要有一个浏览器,通过域名访问服务器端的不同程序)现在主流为bs 2.资源分类 (1)静态资源:所有用户访问后,得到的结果都是一样的。浏览器端发送求到服务器端的静态资源,服务器端响应给浏览器端,浏览器端自带静态资源的解析引擎,通过解析引擎解析出结果,呈现给用户(静态资源可以被浏览器解析) ①如HTML, CSS, JS (2)动态资源:所有用户访问后,得到的结果可能不相同。浏览器端发送请求到服务器端的动态资源,动态资源要先转换为静态资源,然后在响应给浏览器端(动态资源需要先转换为静态资源再响应给浏览器) ①如servlet/jsp,php,asp… 3.网络通信三要素 (1)IP:电子设备的唯一标识 (2)端口:应用程序(就是计算机上的某一个软件)的唯一标识0~65536 (3)传输协议:规定了数据通信的规则(两个程序传输信息,要遵循相同的传输规则) ①基础协议 1)Tcp:安全协议,三次握手,确认双发都在线的情况下在传输,传输速度慢 2)Udp:不安全协议,传输速度快 来源: CSDN 作者: 大海中的海洋 链接: https://blog.csdn.net/weixin_45930636/article/details/104293314