Basic Network Components
1-->IP Address: Unique numerical identifier assigned to devices on a network, allowing them to communicate with other devices through the Internet Protocol (IP).
- IPv4: 32-bit address, e.g., 192.168.1.1 (most common).
- IPv6: 128-bit address, e.g., 2001:0db8:85a3:0000:0000:8a2e:0370:7334(designed to replace IPv4 due to exhaustion).
2-->Port: A virtual point where network connections start and end. It's a number that tells the computer which program should receive incoming data.
- 80: HTTP(Regular web traffic)
- 443: HTTPS(Secure web traffic)
- 21: FTP (File transfer)
- 22: SSH(Secure Shell)
- 3306: MySQL(Database)
3-->Domain Name: Human-readable address that corresponds to an IP address, making it easier to access websites.
Structure: Composed of subdomains and a top-level domain (TLD), e.g., www.example.com.
4-->DNS (Domain Name System):
Function: Translates domain names into IP addresses, allowing browsers to load Internet resources.
Network Protocols
1-->TCP (Transmission Control Protocol):
- Establishes a connection before data transfer.
- Ensures data integrity through error-checking and retransmission of lost packets.
- Use Cases: Web browsing, email, and file transfers where reliability is crucial.
2-->UDP (User Datagram Protocol):
- No connection establishment, leading to lower latency.
- Does not guarantee delivery or order of packets.
- Use Cases: Streaming services, online gaming, and VoIP where speed is prioritised over reliability.
3-->HTTP (HyperText Transfer Protocol):
- GET: Requests data from a specified resource.
- POST: Sends data to a server to create/update a resource.
- PUT: Replaces all current representations of the target resource with the uploaded content.
- DELETE: Removes the specified resource.
- 2xx: Indicates successful requests (e.g., 200 OK).
- 3xx: Indicates redirection (e.g., 301 Moved Permanently).
- 4xx: Indicates client errors (e.g., 403 Forbidden).
- 5xx: Indicates server errors (e.g., 500 Internal Server Error).
Security Concepts
- HTTPS: Extension of HTTP that uses SSL/TLS to encrypt data exchanged between the client and server, ensuring privacy and data integrity.
- SSL/TLS: Protocols that provide secure communication over a computer network by encrypting the data transmitted.
- Authentication: Process of verifying the identity of a user or system, often through credentials like usernames and passwords.
- Authorization: Process of determining what an authenticated user is allowed to do, often managed through roles and permissions.
- CORS (Cross-Origin Resource Sharing): Security feature that allows or restricts resources requested from another domain outside the domain from which the first resource was served.