웹 애플리케이션이란 무엇일까요? 스마트폰을 사용하면서 애플리케이션을 다운받고 해당 기능을 사용하다보니 애플리케이션은 익숙하지만 웹 애플리케이션은 다소 생소할 수 있습니다. 일반적으로 Android 또는 ios 에서 사용하는 애플리케이션은 네이티브 애플리케이션 이라고 합니다. 네이티브 애플리케이션은 특정 OS에 종속되어서 다른 OS에서는 사용할 수 없습니다.
웹 애플리케이션은 브라우저를 통해 접근이 가능한 애플리케이션 입니다.
근데 웹사이트와 웹 애플리케이션은 모두 브라우저를 통해 접속하다보니 구분하기가 다소 어려울 수 있는데요, 간략하게 비교를 해보자면
- 웹사이트
- 정보 제공을 위해 사용되는 정적인 웹페이지들의 집합
- 웹브라우저를 통해 사이트에 방문하여 정보 또는 컨텐츠 확인 가능
- 정적인 컨텐츠를 제공하여 사용자와 상호작용이 제한적임
- 웹애플리케이션
- 웹사이트보다 동적이고 상호작용적 기능 제공
- 상호작용을 통해 데이터 입력, 처리, 출력 등의 작업 수행 가능
- 사용자의 입력 또는 동작에 따라 동적으로 콘텐츠를 생성하고 제공함
즉 웹사이트는 정적인 웹페이지의 집합, 웹애플리케이션은 상호작용적이고 동적인 서비스를 제공하는 웹사이트 라고 볼 수 있겠습니다.
네트워크에 대한 기본적인 이해
LAN 이라는 단어는 익숙합니다. 랜선, 랜케이블 등 일상생활에서도 쉽게 접할 수 있는 용어입니다. 이 LAN 은 Local Area Network의 약자로 지역수준의 좁은 범위에 연결된 네트워크 입니다. 집, 학교, 사무실 정도의 좁은 범위이며 이러한 LAN을 연결하는 선을 랜케이블 이라고 합니다.
이러한 LAN을 세계적으로 확장하여 연결할 수 있게 해주는 것이 WAN 입니다. WAN은 Wide Area Network 의 약자로 LAN들을 연결하여 넓은 범위를 연결하는 네트워크 입니다.
여기서 인터넷에 연결된 컴퓨터들끼리 소통을 하려면 공통된 약속이 필요합니다. 여기서 사용하는 약속을 프로토콜(protocol)이라고 합니다. 지금까지 표준으로 사용되는 프로토콜이 바로 TCP와 IP 입니다.
TCP/IP
TCP 는 Transmission Control Protocol의 약자고 IP는 Internet Protocol 의 약자입니다. 공통된 약속을 규정하기 위해 4계층 모델을 사용합니다.
계층 | 모델 | 프로토콜 | 역할 |
1층 | 접근 계층 | Ethernet, Wi-fi, Bluetooth 등 | 네트워크 인터페이스와 물리적인 데이터 전송 담당 |
2층 | 인터넷 계층 | IP, ICMP, ARP, RARP | 네트워크 주소를 기반으로 데이터 전송 담당 |
3층 | 전송 계층 | TCP, UDP 등 | IP와 어플리케이션을 중개하여 데이터 전달 담당 |
4층 | 응용 계층 | HTTP, DNS, FTP | 애플리케이션에 맞춰 통신 담당 |
TCP는 네트워크상에서 데이터를 안정적으로 전달하기 위한 프로토콜입니다. 데이터를 패킷 형태로 분할하여 전송합니다. 패킷은 작은 조각으로 나누어진 데이터를 뜻합니다. IP는 이러한 패킷을 전달하는 역할을 합니다. TCP와 IP의 역할은 다르지만 대부분의 경우 항상 함께 사용된다고 볼 수 있습니다. TCP가 IP의 상위계층 프로토콜로 IP가 패킷을 전달할 때 해당 패킷의 신뢰성을 보장한다고 볼 수 있습니다.
IP 주소
TCP/IP 구조에서 컴퓨터를 식별하기 위해 사용되는 주소 입니다.
보통 이러한 형태의 주소값으로 표현됩니다. LAN 네트워크 내부에서 사용되는 주소를 private IP주소, 인터넷에서 사용 가능한 주소를 public IP 이라고 합니다.
IP는 IPv4와 IPv6 으로 나뉩니다. 여기서 v는 version 입니다. 초기에는 IPv4 만으로도 모든 주소를 할당할 수 있었지만 PC보급이 계속 높아지면서 IPv4로 할당할 수 있는 주소에 한계가 오게 됩니다. 이를 극복하기 위해 나온것이 IPv6 입니다만 아직까진 IPv6보다 IPv4를 훨씬 더 범용적으로 사용하고 있습니다.
이더넷
컴퓨터 네트워크에서 일반적으로 사용되는 유선 네트워크 기술 입니다. 컴퓨터와 다른 네트워크 장치들이 데이터를 주고받을 수 있도록 해줍니다. LAN 환경에서 사용되며 컴퓨터간 파일 공유, 인터넷 액세스 등의 역할을 합니다. 이더넷 환경에서는 네트워크상의 송수신 상대를 특정하기 위해 MAC주소를 사용합니다.
TCP/IP 에서는 IP주소를 사용하고 이더넷에서는 MAC주소를 사용하기 때문에 두개의 주소를 조합하여 네트워크 통신을 진행하게 됩니다. MAC주소의 경우 처음부터 제조사에서 주어지는 고유 주소값이고 IP는 로컬환경에 따라 할당되는 주소값 입니다. MAC주소를 파악하기 위해 사용하는 것을 ARP 라고 합니다.
라우터
라우터는 데이터를 전송하는 장치입니다. 네트워크 간에 데이터 패킷을 전달하고 경로를 설정하는 역할을 수행합니다. 두 개 이상의 네트워크를 연결하는 중계장치고 사용되는 경우가 일반적입니다. 라우터라는 단어가 생소한 분들이 있을 수 있는데요, 라우터를 번역하면 공유기 입니다.
라우터(공유기)를 통해서 데이터 송수신을 진행한다고 볼 수 있겠습니다.
전반적인 데이터 송수신의 흐름을 간략하게 그림으로 표현하자면 이런 모양입니다.
'개발 > 지식' 카테고리의 다른 글
네트워크에 대한 이해 - 네트워크 구성 기술 (UDP, PORT, URL, DNS) (0) | 2023.05.17 |
---|---|
데이터베이스에 대한 기본적인 이해 (NoSQL) (0) | 2023.05.16 |
데이터베이스에 대한 기본적인 이해 (SQL) (0) | 2023.05.16 |
가비지 컬렉션(Garbage Collection)의 작동원리 (0) | 2023.05.09 |