A communication protocol is a system of rules that allows two or more entities of a communications system to transmit information
Why is there a need for this protocol ?
You're computer cannot understand domain-names It needs to convert ```Domain name → IP Address```
How does DNS work ?
## HTTP Hyper Text Transfer Protocol
Where is HTTP used ?
Protocol is used to get website data `HTTP Request → HTTP Response` You're browser can read this response
``` curl -I https://www.google.com ``` ``` HTTP/2 200 content-type: text/html; charset=ISO-8859-1 content-security-policy-report-only: object-src 'none'; p3p: CP="This is not a P3P policy! See g.co/p3phelp for more info." date: Fri, 15 Sep 2023 07:23:35 GMT server: gws x-xss-protection: 0 x-frame-options: SAMEORIGIN expires: Fri, 15 Sep 2023 07:23:35 GMT cache-control: private set-cookie: 1P_JAR=2023-09-15-07; expires=Sun, 15-Oct-2023 07:23:35 GMT; path=/; domain=.google.com; Secure set-cookie: AEC=Ad49MVF-yLj6J_aphufWpINECIkJxL3ncV8-3gpnHgOf4AcycvK3APos8_8; expires=Wed, 13-Mar-2024 07:23:35 GMT; path=/; domain=.google.com; Secure; HttpOnly; SameSite=lax set-cookie: NID=511=UsNVRe32tJMYOsLb5kCpv8oKOm3IeDF_T7qm7JC55_GrrQuDlEBULGmIhN qrz4IVnPPhH3GCD2wYxR1F6mr84n58gpG5hM3PkmPQCNe1V0gx2CqXFIYbB eK5WIoderECVEDf-412wT2TkdCIGDit9yplk3BFIdIzRpFx3_ab0TQ; expires=Sat, 16-Mar-2024 07:23:35 GMT; path=/; domain=.google.com; HttpOnly alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 ```
## HTTPS
### S - SSL (Secure Socket Layer) is a technology created by the browser to create a secure, encrypted communication channel over any network
- HTTPS exchanges encryption keys using certificates before sending data. - HTTPS works at Transport Layer but HTTP works on Application Layer.
## TCP Transmission Control Protocol
- Little more complex than HTTP - TCP uses raw binary data unlike HTTP - TCP is a layer below HTTP
## UDP User Datagram Protocol
### Features - Unreliable and connectionless protocol - No Checksum - UDP packets are 8 bytes which is small compared to something like a TCP Packet which is 20-60 bytes - Lower Latency - Faster Response Time
### Uses - NTP (Network Time Protocol) - Voice and Video Calling - Gaming - Used in DNS
## SSH Secure Shell (or) Secure Socket Shell
Where is this used ?
## Everything Terminal (or) cmd 🙇
Shell is the interface you deal with when using a cmd or terminal
Different types of shell - bash - zsh - cshell - kornshell
- Unix release date - November 1971 - First Display manager release date - October 1988
SSH is a protocol used to connect to another machine and remotely access it. ssh darthvader@192.168.1.169 -p 22
## FTP File Transfer Protocol
Its a protocol used to transfer files across the network
It uses the client server model. The server hosts the files and the client can download / upload / delete / rename etc.
This also uses the TCP protocol. So it starts with the 3 way handshake before sending the files.