본문 바로가기

CS/네트워크 기초

(9)
렌더링 엔진의 종류와 특지 렌더링 엔진의 종류로는 아래와 같다. Gecko - 모질라, 파이어폭스 게코는 구형 넷스케이프 및 구형 인터넷 익스플로러용 문서를 바르게 볼 수 있도록 DOCTYPE 전환을 지원한다. SERVO - 모질라 모질라 재단의 차세대 엔진이다. 2013년 기준으로 개발 중이며, 안전한 브라우징과 병렬처리 특화를 목표로 한다. 프로그래밍 언어인 Rust를 먼저 개발 후 Rust기반으로 엔진을 제작 중. Blink - 구글, 오페라 UI를 실행하고 탭 및 플러그인 프로세스를 "브라우저 프로세스" 또는 "브라우저"로 관리하는 기본 프로세스를 참조한다. 마찬가지로, 탭에 관한 프로세스는 "렌더 프로세스" 또는 "렌더러"라고 부른다. 렌더러는 HTML을 해석하고 배치하기위해 Blink라는 오픈소스 레이아웃 엔진을 사용한..
RSET API 와 RESTful 이란? RESTRepresentational State Transfer(REST)는 API 작동 방식에 대한 조건을 부과하는 소프트웨어 아키텍처 디자인 제약이 모음자원을 정의(자원의 표현)하고 자원에 상태 (정보)를 주고 받는 모든 것을 의미REST는 기존 웹 기술과 HTTP프로토콜을 그대로 활용하기 땜ㄴ에 웹이 장점을 최대한 활용할 수 있는 아키텍처 형식이다.REST의 제한조건인터페이스 일관성일관적인 인터페이스로 분리되어야 한다.무상태성(stateless)HTTP의 특성을 으로 무상태성을 가진다. 서버에서 어떤 작업을 위해 상태정보를 기억할 필요가 없고 요청에 대해 처리만 하기 때문에 구현이 쉽고 단순하다.캐시 처리 가능(Cacheable)기존 HTTP 라는 웹 표준을 사용하는 REST의 특징 덕분에 기본 ..
웹 브라우저의 구성 요소와 요소별 특징 브라우저의 주요 구성 요소는 다음과 같다. 1. 사용자 인터페이스 - 사용자가 요청한 페이지를 보여주는 부분을 제외한 주소 표시줄 등등의 모든 것을 말한다. 2. 브라우저 엔진 - 사용자 인터페이스 와 렌더링 엔진 사이의 동작을 제어한다. 3.렌더링 엔진 - 사용자가 요청한 페이지를 표시. HTML을 요청하면 HTML과 CSS를 파싱하여 화면에 표시함. 4. 통신 - HTTP요청과 같은 네트워크 호출에 사용된다. 이것은 플랫폼 독립적인 인터페이스이고 각 플랫폼 하부에서 실행됨 5. UI 백엔드 - 콤보 박스와 창 같은 기본적인 장치를 그림. 플랫폼에서 명시하지 않은 일반적인 인터페이스로서, OS 사용자 인터페이스 체계를 사용. 6. 자바스크립트 해석기(interpreter) - 자바스크립트를 해석하여 실..
네트워크 통신 과정 DHCP[ip] -> ARP[ip-mac] -> DNS[udp] -> HTTP[tcp] DHCP ARP DNS HTTP DHCP란 Dynamic Host Configuration Protocol 약자이다. DHCP란 호스트의 IP주소와 각종 TCP/IP 프로토콜의 기본 설정을 클라이언트에게 자동적으로 제공해주는 프로토콜을 말합니다 DHCP 프로토콜의 메세지는 Discover,offer,request,ack 4개의 형태로 구성되어있다. DHCP프로토콜은 3계층 네트워크 계층에서 UDP로 전송한다. DHCP Discover은 클라이언트가 DHCP서버를 찾기 위해 메시지를 송신하는 것을 말한다. 2계층 Ethernet 프로토콜의 구성 중 도착지 Mac address를 최대값 즉 (ff:ff:ff:ff:ff:f..
TCP 패킷 분석 3-way handshake 연결 수립 클라이언트(사용자)가 서버에 페이지를 요청한다 [SYN] 패킷을 보냅니다. 서버가 연결을 받았다면 ACK를 응답하게 된다. 그리고 서버도 SYN을 요청합니다. 클라이언트는 최종적으로 ACK 응답을 하게되면 연결 설정이 완료 된다. Data Send/Receive GET방식으로 요청, HTTP1.1을 사용중이라고 서버에 알려준다. HTTP/1.1 200 OK라는 건 응답으로 http코드 200이 정상이라는 뜻. 패킷 세부 내용 Data Link Layer 에 해당하는 부분 사용 프로토콜은 Ethernet 이다. 장비는 스위치 목적지의 MAC 주소와 출발지의 MAC를 가지고 직접 연결된 노드간의 통신을 담당하고 Data전송시 에러를 검출한다. NetWork Layer ..
DNS 패킷 분석 1번째 라인은 클라이언트가 DNS를 요청하는 패킷 (DNS 쿼리 패킷) 2 번째 라인은 DNS서버가 클라이언트에게 요청에 대한 응답을 해주는 패킷 (DNS 응답 패킷) 쿼리 패킷은 UDP를 사용한다. 이미지상 50246포트를 사용하고 목적지는 53 포트이다.
와이어샤크 (Wireshark)로 ARP 분석 이미지의 1번째 라인은 192.168.0.1의 맥주소를 알아오기 위해 브로드 캐스팅을 한 패킷입니다. 이미지의 2번째 라인은 192.168.0.1의 주소를가진 서버가 응답한 패킷입니다. 현재 위 이미지에서 목적지로 할당된 맥주소는 (ff : ff : ff : ff : ff : ff) 인 이유는 IP Address만 알고 맥주소는 알 수 없어 브로드 캐스팅을 진행하기 위함이다. 이미지의 하단의 Address Resolution Protocol 을 보면 Target IP address 는 192.168.0.1로 명확히 알고있지만 타겟의 맥주소는 알 수 없다는 걸 확인할 수 있다. 현재 위 이미지에서는 처음에 목적지의 IP Address로 설정되어있던 192.168.0.1을 찾아 응답받은 패킷이다. 해당 임지..
와이어샤크 (Wireshark)를 통한 DHCP 패킷 분서 AP(Access Point) 를 탐색한다. 가까운 AP들이 자신의 범위에 있는 모든 노드에게 비컨(Beacon) 프레임을 브로드캐스팅하며 자신의 존재를 알리고 있기 때문에 클라이언트는 AP리스트를 확인하고 연결할 수 있다. ex: wifi 이런 방식을 패시브 스캐닝 이라고한다 (Passive scanning) 반대로 노드가 AP를 탐색하는 방식을 액티브 스캐닝(Active scanning)이라고 한다 흔히 사용하는 Wi-FI 통신이 이러한 IEEE 802.11 표준을 바탕으로 한다. DHCP (Dynamic Host Configuration Protocol) (1) 이미지의 1번째 라인 즉 DHCP Discover 은 클라이언트가 DHCP 서버를 찾기 위해 브로드캐스팅을 하는 패킷이다. (2) 2번째 ..