Monday, May 8, 2023

Hypertext Transfer Protocol HTTP and Hypertext Transfer Protocol Secure HTTPS

HTTP :- HTTP (Hypertext Transfer Protocol) is an application-layer protocol used for transmitting hypertext documents on the World Wide Web. It is the foundation of data communication for the web and enables the exchange of information between a client (such as a web browser) and a web server.
HTTP is used for the retrieval and delivery of web resources, such as HTML documents, images, videos, and other types of content. TCP Port 80 is default port for HTTP. 
एचटीटीपी:- एचटीटीपी (हाइपरटेक्स्ट ट्रांसफर प्रोटोकॉल) एक एप्लिकेशन-लेयर प्रोटोकॉल है, जिसका इस्तेमाल वर्ल्ड वाइड वेब पर हाइपरटेक्स्ट दस्तावेजों को ट्रांसमिट करने के लिए किया जाता है। यह वेब के लिए डेटा संचार की नींव है और क्लाइंट (जैसे वेब ब्राउज़र) और वेब सर्वर के बीच सूचनाओं के आदान-प्रदान को सक्षम बनाता है।
HTTP का उपयोग वेब संसाधनों की पुनर्प्राप्ति और वितरण के लिए किया जाता है, जैसे कि HTML दस्तावेज़, चित्र, वीडियो और अन्य प्रकार की सामग्री। टीसीपी पोर्ट 80 HTTP के लिए डिफ़ॉल्ट पोर्ट है।


Characteristics of HTTP:-
एचटीटीपी की विशेषताएं:-

1. Client-Server Model: HTTP operates in a client-server model. The client, typically a web browser, sends requests to the server, and the server responds with the requested resources or performs the requested actions.
1. क्लाइंट-सर्वर मॉडल: HTTP क्लाइंट-सर्वर मॉडल में काम करता है। क्लाइंट, आमतौर पर एक वेब ब्राउज़र, सर्वर को अनुरोध भेजता है, और सर्वर अनुरोधित संसाधनों के साथ प्रतिक्रिया करता है या अनुरोधित क्रियाएं करता है।

2. Stateless Protocol: HTTP is a stateless protocol, which means that each request/response cycle is independent and does not retain any information about previous requests. This requires additional mechanisms, such as cookies or session management, to maintain stateful interactions between the client and server.
2. स्टेटलेस प्रोटोकॉल: HTTP एक स्टेटलेस प्रोटोकॉल है, जिसका अर्थ है कि प्रत्येक अनुरोध/प्रतिक्रिया चक्र स्वतंत्र है और पिछले अनुरोधों के बारे में कोई जानकारी नहीं रखता है। क्लाइंट और सर्वर के बीच स्टेटफुल इंटरैक्शन बनाए रखने के लिए इसके लिए अतिरिक्त तंत्र की आवश्यकता होती है, जैसे कुकीज़ या सत्र प्रबंधन।

3. Request-Response Cycle: The communication in HTTP follows a request-response cycle. The client sends an HTTP request to the server, which includes a method (such as GET, POST, PUT, DELETE) to indicate the desired action, a URL (Uniform Resource Locator) to specify the resource, headers for additional information, and optionally a message body. The server then processes the request and sends back an HTTP response, which includes a status code indicating the outcome of the request, headers, and optionally a response body.
3. अनुरोध-प्रतिक्रिया चक्र: HTTP में संचार अनुरोध-प्रतिक्रिया चक्र का अनुसरण करता है। क्लाइंट सर्वर को एक HTTP अनुरोध भेजता है, जिसमें वांछित क्रिया को इंगित करने के लिए एक विधि (जैसे GET, POST, PUT, DELETE) शामिल होती है, संसाधन निर्दिष्ट करने के लिए एक URL (यूनिफ़ॉर्म रिसोर्स लोकेटर), अतिरिक्त जानकारी के लिए हेडर और वैकल्पिक रूप से एक संदेश निकाय। सर्वर तब अनुरोध को संसाधित करता है और एक HTTP प्रतिक्रिया वापस भेजता है, जिसमें एक स्थिति कोड शामिल होता है जो अनुरोध, हेडर और वैकल्पिक रूप से एक प्रतिक्रिया निकाय के परिणाम को दर्शाता है।

4. HTTP Methods: HTTP defines various methods or verbs that indicate the desired action to be performed on a resource. Some commonly used methods include:-
4. एचटीटीपी तरीके: एचटीटीपी विभिन्न तरीकों या क्रियाओं को परिभाषित करता है जो किसी संसाधन पर की जाने वाली वांछित क्रिया को इंगित करता है। कुछ आमतौर पर इस्तेमाल की जाने वाली विधियों में शामिल हैं:-
GET: Retrieves a resource from the server.
POST: Submits data to the server to create or update a resource.
PUT: Updates a resource on the server.
DELETE: Deletes a resource from the server.
HEAD: Retrieves the headers of a resource without the response body.
OPTIONS: Retrieves the communication options available for a resource or server.

गेट: सर्वर से संसाधन पुनर्प्राप्त करता है।
पोस्ट: संसाधन बनाने या अपडेट करने के लिए सर्वर को डेटा सबमिट करता है।
पुट: सर्वर पर एक संसाधन को अपडेट करता है।
डिलीट: सर्वर से संसाधन हटाता है।
हेड: रिस्पांस बॉडी के बिना संसाधन के हेडर को पुनः प्राप्त करता है।
आप्शनस: संसाधन या सर्वर के लिए उपलब्ध संचार विकल्पों को पुनः प्राप्त करता है।

5. Status Codes: HTTP uses status codes in the response to indicate the outcome of a request. Some common status code categories include:-
5. स्थिति कोड: HTTP अनुरोध के परिणाम को इंगित करने के लिए प्रतिक्रिया में स्थिति कोड का उपयोग करता है। कुछ सामान्य स्थिति कोड श्रेणियों में शामिल हैं:-
2xx: Success codes (e.g., 200 OK indicates a successful request).
3xx: Redirection codes (e.g., 301 Moved Permanently redirects to a new URL).
4xx: Client error codes (e.g., 404 Not Found indicates a resource was not found).
5xx: Server error codes (e.g., 500 Internal Server Error indicates a server-side issue).

2xx: सक्सेस कोड (जैसे, 200 ओके एक सफल अनुरोध को दर्शाता है)।
3xx: पुनर्निर्देशन कोड (उदाहरण के लिए, 301 स्थानांतरित स्थायी रूप से एक नए यूआरएल पर रीडायरेक्ट करता है)।
4xx: ग्राहक त्रुटि कोड (उदाहरण के लिए, 404 नहीं मिला इंगित करता है कि संसाधन नहीं मिला)।
5xx: सर्वर त्रुटि कोड (उदाहरण के लिए, 500 आंतरिक सर्वर त्रुटि सर्वर-साइड समस्या का संकेत देती है)।

6. URL and URI: HTTP uses Uniform Resource Locators (URLs) to identify resources on the web. A URL consists of a protocol identifier (e.g., "http://" or "https://"), a domain name or IP address, and a resource path. URLs are a subset of Uniform Resource Identifiers (URIs), which are used to identify any resource, not just web resources.
6. URL और URI: HTTP वेब पर संसाधनों की पहचान करने के लिए यूनिफ़ॉर्म रिसोर्स लोकेटर (URL) का उपयोग करता है। एक URL में एक प्रोटोकॉल पहचानकर्ता (जैसे, "http: //" या "https: //"), एक डोमेन नाम या IP पता और एक संसाधन पथ होता है। URL यूनिफ़ॉर्म रिसोर्स आइडेंटिफ़ायर (URI) का एक सबसेट हैं, जिनका उपयोग किसी भी संसाधन की पहचान करने के लिए किया जाता है, न कि केवल वेब संसाधनों की।

7. HTTP Headers: HTTP requests and responses include headers that provide additional information about the request/response or modify their behavior. Headers can include information such as content type, cache control directives, authentication tokens, and more.
7. एचटीटीपी हेडर: एचटीटीपी अनुरोधों और प्रतिक्रियाओं में हेडर शामिल होते हैं जो अनुरोध/प्रतिक्रिया के बारे में अतिरिक्त जानकारी प्रदान करते हैं या उनके व्यवहार को संशोधित करते हैं। शीर्षलेख में सामग्री प्रकार, कैश नियंत्रण निर्देश, प्रमाणीकरण टोकन, आदि जैसी जानकारी शामिल हो सकती है।


HTTPS :- HTTPS (Hypertext Transfer Protocol Secure) is a secure version of HTTP that provides encrypted communication over a computer network, typically the internet. It is widely used to secure the transmission of sensitive information, such as login credentials, financial transactions, and personal data, between a client (such as a web browser) and a web server. HTTPS has become the standard protocol for secure web communication. It ensures the confidentiality, integrity, and authenticity of data transmitted between clients and servers, providing a secure environment for online transactions, sensitive information exchange, and secure browsing experiences.

Here are some key points about HTTPS:-

1. Encryption: The main purpose of HTTPS is to secure the communication between the client and the server by encrypting the data transmitted over the network. It uses SSL (Secure Sockets Layer) or its successor, TLS (Transport Layer Security), protocols to establish an encrypted connection.


2. Secure Socket Layer (SSL) and Transport Layer Security (TLS): SSL and TLS are cryptographic protocols that provide secure communication over the internet. They ensure the confidentiality and integrity of the data transmitted between the client and the server. TLS has superseded SSL as the preferred protocol, and the terms SSL and TLS are often used interchangeably.


3. Digital Certificates: HTTPS relies on digital certificates issued by trusted certificate authorities (CAs) to authenticate the identity of the server. These certificates contain the server's public key, which is used for encryption, and are digitally signed by the CA to verify their authenticity.


4. HTTPS URL: HTTPS URLs are similar to HTTP URLs but with an additional "s" after "http" in the URL. For example, "https://www.example.com" indicates that the connection to the server is secured using HTTPS.


5. Port: HTTPS typically uses TCP port 443 as the default port for communication. When a client initiates an HTTPS connection, it connects to the server's port 443 to establish the secure connection.


6. Secure Data Transmission: With HTTPS, the data transmitted between the client and the server is encrypted, making it difficult for unauthorized parties to intercept and decipher the information. This ensures the confidentiality and privacy of sensitive data.


7. Server Authentication: HTTPS enables server authentication, allowing the client to verify the identity of the server it is communicating with. This helps protect against man-in-the-middle attacks and ensures that the client is communicating with the intended and legitimate server.


8. Compatibility and Browser Support: Modern web browsers widely support HTTPS, and many websites have transitioned from HTTP to HTTPS to provide a secure browsing experience. Browsers typically indicate a secure HTTPS connection by displaying a padlock icon in the address bar.


9. Performance Considerations: Establishing an HTTPS connection requires additional computational resources compared to HTTP due to the encryption and decryption processes. However, advancements in hardware and software optimizations have significantly reduced the performance impact, and the benefits of secure communication outweigh the minor overhead.

No comments:

Post a Comment

Data Link control Flow and Error Control

 In data communication, Data Link Control (DLC) refers to the services and protocols that ensure reliable and efficient communication betwee...