Logo
programming4us
programming4us
programming4us
programming4us
Home
programming4us
XP
programming4us
Windows Vista
programming4us
Windows 7
programming4us
Windows Azure
programming4us
Windows Server
programming4us
Windows Phone
 
Windows Server

Windows Server 2012 : Support for open standards

- Free product key for windows 10
- Free Product Key for Microsoft office 365
- Malwarebytes Premium 3.7.1 Serial Keys (LifeTime) 2019
4/5/2014 2:00:12 AM

Support for open industry standards is important in a heterogeneous world. Platforms need to interoperate seamlessly so that companies can focus on doing business instead of solving technical problems. Hybrid solutions are becoming the norm, and web hosting platforms need to support a wide variety of different development paradigms and communication protocols so that innovation can continue to drive business forward.

IIS 8 in Windows Server 2012 includes support for all the latest web standards and protocols, such as the WebSocket protocol, HTML 5, Asynchronous JavaScript And XML (AJAX), and for both ASP.NET 3.5 and ASP.NET 4.5. Together with Windows Internet Explorer 10 on the client running Windows Server 2012, and with the next version of the Microsoft Visual Studio development platform, organizations will have everything they need to build tomorrow’s web.

WebSocket

Interactive web applications developed using HTML 5 and AJAX need secure real-time bidirectional communications between the web browser client and the web server. Support for WebSocket in IIS 8 brings just that. And although it’s designed to be implemented in web browsers and web servers, it can be used by any client or server application.

How WebSocket works

WebSocket is a stable, open industry-standard protocol that is defined by the Internet Engineering Task Force (IETF) in RFC 6455 that lets web servers push messages from the server to the client instead of just letting the client pull messages from the server. It works by establishing a bidirectional, full-duplex Transmission Control Protocol (TCP) socket that is initiated by HTTP, which makes it easy for tunneling through proxies and firewalls. It also works well with Layer 4 TCP load balancers. The protocol has low latency and low bandwidth overhead, and it uses SSL for secure communications. For further details concerning how WebSocket communications are established, see the following sidebar.

WebSocket handshake

To establish a WebSocket connection, the client and server perform a “handshake” where they agree that they both understand the same version of WebSocket and the requested server resource supports WebSocket. The following client request and server response make up the handshake performed to establish a WebSocket connection.

The following is a sample WebSocket request from a client:

   GET /sampleapp HTTP/1.1
Host: contoso.com
Upgrade: websocket
Connection: Upgrade
Origin: http://contoso.com
Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
Sec-WebSocket-Version: 13

IIS handling of WebSocket request

When the server evaluates this request, it notices that the Upgrade header is requesting that the connection be upgraded to a WebSocket connection. The server responds with an HTTP 101 response indicating that the protocol is being changed to use WebSocket.

IIS implements a native WebSocket module on the IIS request pipeline architecture, which applications can use to communicate over WebSocket. The IIS WebSocket module listens on the RQ_SEND_RESPONSE notification of the request pipeline.

On send response notification (before the response is returned to the client), if the HTTP status code of the response is 101, IIS calls into the Websocket.dll (the Win32 library in Windows Server 2012, which implements WebSocket framing). The WebSocket dll then computes a value for the Sec-WebSocket-Accept header based on the value of the Sec-WebSocket-Key from the request header.

These values are then set into the response headers. On the send call to HTTP, IIS also sets the HTTP_SEND_RESPONSE_FLAG_OPAQUE flag, which indicates that HTTP should go into opaque mode. This flag tells HTTP that the request and response from that point on will not be HTTP-compliant, and all subsequent bytes should be treated as an entity-body and appends the Sec-WebSocket-Accept header to the response.

The following is a sample response from a server:

   HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=

The server response indicates to the client that it is switching to WebSocket and returns the result of the operation that it performed on the Sec-WebSocket-Key in the Sec-WebSocket-Accept header. The client uses this to confirm that the server properly understands WebSocket. This concludes the handshake.

Using the WebSocket connection

If the handshake is successful, applications can get a pointer to the IWebSocketContext interface from the IHttpContext of the request. The IWebSocketContext interface is stored in the Named Context containers of IHttpContext. Applications can query the named context container with the query key “websockets” to get the pointer to this interface.

Applications can then do WebSocket I/O through the APIs exposed by this interface. WriteFragment, ReadFragment, SendConnectionClose, GetCloseStatus, and CloseTcpConnection are the APIs implemented for Windows Server 2012.


Support for HTML 5

HTML 5 is an open, industry-standard markup language being developed by the World Wide Web Consortium (W3C) and the Web Hypertext Application Technology Working Group (WHATWG). At present, it consists of more than 100 different specifications that define the next generation of web application technologies. The actual name “HTML 5” can be thought of as a kind of umbrella term that defines a collection of different HTML, Cascading Style Sheets (CSS), and JavaScript specifications that allow developers to create rich, interactive web applications using asynchronous script execution, drag-and-drop APIs, sandboxing, channel messaging, and other advanced capabilities.

IIS 8 in Windows Server 2012 includes built-in support for the latest HTML5 standards. Together with Internet Explorer 10 running on Windows Server 2012 and with the upcoming release of Visual Studio 11, businesses will have all the tools and platforms needed to build the modern, interactive web.

  • HTML5Labs (http://html5labs.com), where Microsoft prototypes early and unstable specifications from web standards bodies such as W3C.

  • Visual Studio 11 Beta, which can be downloaded from http://www.microsoft.com/visualstudio/11/.

Other -----------------
- Microsoft SharePoint 2013 : Working with Visio Services - Customizing Visio Services solutions
- Microsoft SharePoint 2013 : Working with Visio Services - Designing dashboards - Data linking (part 4) - Adding data graphics , Web part connections
- Microsoft SharePoint 2013 : Working with Visio Services - Designing dashboards - Data linking (part 3) - Mapping external data to shapes
- Microsoft SharePoint 2013 : Working with Visio Services - Designing dashboards - Data linking (part 2) - Refreshing external data
- Microsoft SharePoint 2013 : Working with Visio Services - Designing dashboards - Data linking (part 1) - Obtaining external data
- Microsoft SharePoint 2013 : Looking at Visio Services (part 4) - Visio Services security considerations,Supported data scenarios
- Microsoft SharePoint 2013 : Looking at Visio Services (part 3) - Visio Graphics Service service application
- Microsoft SharePoint 2013 : Looking at Visio Services (part 2) - Adding a Visio Web Access Web Part to a page
- Microsoft SharePoint 2013 : Looking at Visio Services (part 1) - Displaying Visio drawings in Visio Services
- Microsoft Exchange Server 2013 : Mailbox management - Seeking perfection halts progress (part 3) - Changing EAC columns
 
 
Top 10
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 2) - Wireframes,Legends
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 1) - Swimlanes
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Formatting and sizing lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Adding shapes to lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Sizing containers
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 3) - The Other Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 2) - The Data Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 1) - The Format Properties of a Control
- Microsoft Access 2010 : Form Properties and Why Should You Use Them - Working with the Properties Window
- Microsoft Visio 2013 : Using the Organization Chart Wizard with new data
 
programming4us
Windows Vista
programming4us
Windows 7
programming4us
Windows Azure
programming4us
Windows Server