`
web001
  • 浏览: 98816 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

网站建设底层知识Socket与Http解析

阅读更多

在进行网站建设的时候,常常遇到不同的协议,Socket和http协议都可以实现数据传输,但两种传输方式在网站建设中有什么各自的特点,和缺点,如何选择合适的传输方式。

 

1 数据传输方式

1.1  Socket传输的定义和其特点

所谓socket通常也称作"套接字",实现网站服务器和客户端之间的物理连接,并进行数据传输,主要有UDP和TCP两个协议。Socket处于网络协议的传输层。

UDP协议:广播式数据传输,不进行数据验证

TCP协议:传输控制协议,一种面向连接的协议,给用户进程提供可靠的全双工的字节流,

 

Socket 传输的特点:

优点

1)  传输数据为字节级,传输数据可自定义,数据量小(对于手机应用讲:费用低)

2) 传输数据时间短,性能高

3) 适合于客户端和服务器端之间信息实时交互

4) 可以加密,数据安全性强

 

缺点:

1) 需对传输的数据进行解析,转化成应用级的数据

2) 对网站建设开发人员的开发水平要求高

3) 相对于Http协议传输,增加了网站开发量

 

1.2  基于Http协议传输的定义和其特点

目前在网站建设中基于http协议传输的主要有http协议 和基于http协议的Soap协议(web service),常见的方式是 http 的post 和get 请求,web 服务,比如访问一个网站http://www.hualai.net.cn,则使用的是http协议。

 

基于http协议建设网站的传输特点

优点:

1) 基于网站应用级的接口使用方便

2) 网站建设人员开发水平要求不高,容错性强

 

缺点:

1) 传输速度慢,网站数据包大(Http协议中包含辅助应用信息)

2) 如实时交互,网站服务器性能压力大。

3) 数据传输安全性差

 

2 各数据传输方式的适用范围

2.1 Socket传输适用范围

基于Socket传输的特点:Socket 传输方式适合于对传输速度,安全性,实时交互,费用等要求高的应用中,如网络游戏,手机应用,银行内部交互等

 

2.2 基于Http协议传输的适用范围

基于http协议传输的特点:基于http协议传输方式适合于对传输速度,安全性要求不是很高,且需要快速开发的网站应用。如公司OA网站系统,互联网服务等。

3
30
分享到:
评论
3 楼 lipeixin 2012-08-22  
no1dog 写道
敢问楼主,如果让你写个http协议栈,你会不会用到socket

明白你的意思,http要通信,底层肯定要用到传输协议来支持
只是觉得两者比较实在没什么意思,
还不如比较tcp和udp两者的区别更加好些,
或者比较http和https也可以.
否则我写个文章介绍tcp,然后那边突然来个ftp协议,http协议.
会不太好.
2 楼 no1dog 2012-08-21  
敢问楼主,如果让你写个http协议栈,你会不会用到socket
1 楼 lipeixin 2012-08-21  
我怎么觉得lz将不同层次的协议混着讲呢?

http只是一个应用层的协议,而socket和http面向的层次是不一样的.

让我感觉lz在讲,java也可以写代码,c也可以写代码,两者有什么不同一样




相关推荐

    java socket源码解析

    java socket源码解析 java socket源码解析 java socket源码解析 java socket源码解析

    linux下使用RAW SOCKET接收LLDP报文并解析LLDP报文

    本话题主要关注的是使用RAW SOCKET来接收和解析LLDP(Link Layer Discovery Protocol)报文。LLDP是一种网络邻接发现协议,用于交换设备间关于自身身份和能力的信息。RAW SOCKET允许程序员直接与网络层交互,获取...

    socket客户端长连接实现以及xml文件解析

    在客户端-服务器架构中,客户端通过Socket与服务器建立连接,发送请求并接收响应。对于长连接,其主要特点是保持连接状态,在连接建立后,可以进行多次数据传输,而不是每次交互都创建新的连接。这在高并发、低延迟...

    Socket编程详细解析

    Socket编程是计算机网络通信的...本系列的四个文件——“Socket编程详细解析1.txt”至“Socket编程详细解析4.txt”,很可能会涵盖从基础知识到高级技巧的全面讲解,对于学习和提升Socket编程技能具有很高的参考价值。

    Linux系统环境下的Socket编程详细解析

    在Linux系统环境中,Socket编程是开发TCP/IP网络应用程序的基础。Socket接口是TCP/IP网络的API,它提供了一系列的函数和过程,使得程序员能够构建在网络上运行的各类应用。本篇文章将深入探讨Socket编程的关键概念和...

    C++解析json/socket通讯

    本篇文章将深入探讨如何在C++环境中解析JSON数据以及运用socket进行客户端与服务器之间的通信。 首先,我们要了解JSON。JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它的基本...

    socket编程。实现tiny解析器解析一个xml文档,客户端输入相应命令,服务器回显相应结果给客户端。

    综上所述,这个项目涵盖了Socket编程、TCP/IP协议、XML解析、客户端-服务器交互、错误处理等多个方面的知识,是一个综合性的网络编程实践。在实际开发过程中,需要结合具体需求和环境,优化设计并确保系统的稳定性和...

    利用rawsocket实现本机网络报文监控解析

    总之,利用Raw Socket实现本机网络报文监控解析是一项涉及网络编程底层操作的任务,它能够提供对网络流量的直接洞察,对于网络管理员、安全研究人员和软件开发者来说都是极其有价值的工具。通过学习和实践这一技术,...

    socket 中间件 底层通信

    在C#中,我们可以利用.NET框架提供的System.Net.Sockets命名空间来创建和操作Socket对象,实现底层通信。本文将深入探讨Socket中间件的核心原理、开发过程以及在实际应用中的作用。 首先,Socket是网络通信的基础,...

    UR机械臂C#Socket连接及解析

    UR机械臂,全称为Universal Robots(优傲机器人),是一款广泛应用...总之,使用C#通过Socket与UR机械臂进行通信涉及网络编程、数据解析和UR SDK的使用。理解这些基本概念和步骤,能帮助你编写出稳定、高效的控制程序。

    应用socket编程来进行xml的传输已经解析

    当我们将XML数据与Socket编程结合时,可以实现XML数据在网络中的高效传输和解析。以下将详细介绍这一技术的应用和相关知识点。 **1. XML基本概念** XML的设计目标是传输和存储数据,而不是显示数据。XML文档由元素...

    socket 实现http下载

    在IT领域,网络编程是不可或缺的一部分,而Socket编程则是实现客户端与服务器通信的基础。本话题主要探讨如何使用Socket实现HTTP下载,这对于理解HTTP协议的工作原理和深入学习网络编程至关重要。 HTTP(超文本传输...

    Socket底层协议Dll

    Socket底层协议Dll是计算机编程中用于网络通信的重要组件,它基于DLL(动态链接库)形式提供服务,使得应用程序能够实现跨平台的网络数据传输。DLL文件是Windows操作系统中的一种共享库,它包含了一系列预编译的函数...

    用Socket实现DNS查询

    可能包括定义数据结构来表示DNS报文,编写函数来构建和解析报文,以及封装Socket操作的函数。通过阅读和理解这段代码,你可以深入了解DNS查询的工作原理,以及如何利用Socket编程实现这一功能。 总之,用Socket实现...

    Socket实现HTTP下载协议.rar

    Socket则提供了底层的网络通信接口,使得我们能够构建自己的网络应用,比如实现HTTP下载功能。 首先,让我们理解HTTP协议的基本工作流程。HTTP协议基于请求/响应模型,客户端(浏览器或自定义应用)发送一个HTTP...

    c#使用Socket发送HTTP/HTTPS请求的实现代码

    本文主要介绍了如何使用C#的Socket类来发送HTTP/HTTPS请求,并对相关的知识点进行了详细的解释。 Socket编程 在C#中,Socket是使用最广泛的网络编程接口之一。Socket允许程序员在不同的网络协议上发送和接收数据,...

    底层通信_SOCKET

    底层通信_SOCKET非常值得一看!

    Android下socket模拟http server

    在Android平台上,我们可以利用Socket编程来模拟一个简单的HTTP服务器,以提供本地文件系统中的资源,如HTML文件,供外部设备(如浏览器)访问。这个过程涉及到Android系统的网络权限管理、Socket编程以及HTTP协议的...

    利用C# Socket 实现HTTP WEB服务器

    在本文中,我们将深入探讨如何使用C#编程语言和Socket技术来实现一个基本的HTTP Web服务器。C#是一种面向对象的、类型安全的编程语言,广泛应用于Windows平台上的应用程序开发,包括网络服务。Socket是网络通信的...

    基于HttpSocket网络底层的自动发贴学习源码

    本程序基于HttpSocket网络底层的自动发贴源码(附带简单验证码识别功能),发贴效率高。由于对方论坛不断改版,如果发贴失败则可进行修改后使用。 本软件为学习发贴软件开发的朋友提供一个很好的思路。是不可多得的...

Global site tag (gtag.js) - Google Analytics