CS/Network (9) 썸네일형 리스트형 DNS 동작원리 DNS 는 Domain Name System이다. DNS는 사람이 읽을 수 있는 도메인 이름을 머신이 읽을 수 있는 IP주소로 변환한다. 스마트폰이나 노트북부터 대규모 소매 웹 사이트의 컨텐츠를 서비스하는 서버에 이르기까지 인터넷상의 모든 컴퓨터는 숫자를 사용하여 서로를 찾고 통신한다. 이러한 숫자를 IP주소라고 한다. 웹 브라우저를 열고 웹 사이트로 이동할 때는 긴 숫자를 기억해 입력할 필요가 없다. 그 대신, example.com 과 같은 도메인 이름을 입력해도 원하는 웹 사이트로 갈 수 있다. Amazon Route 53 과 같은 DNS 서비스는 전 세계에 배포된 서비스로, example.com 과 같이 사람이 읽을 수 있는 이름을 192.0.2.1과 같은 숫자 IP주소로 변환하여 컴퓨터가 서로 통.. 라우터와 스위치 허브(Hub) 여러 대의 컴퓨터를 연결해서 네트워크를 만들어주는 장치 데이터 패킷을 받으면 연결된 모든 장치들에게 모두 보낸다. 모든 장치들이 데이터 패킷을 받고 자신에게 온 데이터 패킷인지 확인하고 필요하면 취득한다. 즉, 단순 분배를 하는 중계 장치 스위치(Switch) 스위치는 연결된 장치들의 IP와 MAC주소를 모두 테이블 형태로 가지고, 원하는 목적지에 데이터 패킷을 전송하는 장치이다. 허브와 달리 스위치는 무작정 데이터 패킷을 뿌리는 것이 아니라, IP와 MAC 주소를 기반으로 필요한 장치에게만 데이터 패킷을 전송한다. 가령, 87.90.40.2:5000 의 IP와 Port로 요청이 들어왔다고 가정해보겠다. 이 경우 스위치는 해당 요청을 받아서, 테이블에서 요청된 IP와 Port에 해당하는 M.. GET vs POST 둘다, HTTP 프로토콜을 이용해 서버에 무언가 요청할 때 사용하는 방식이다. GET 방식은, URL을 통해 모든 파라미터를 전달하기 때문에 주소창에 전달 값이 노출됨. URL 길이가 제한이 있기 때문에 전송 데이터 양이 한정되어 있고, 형식에 맞지 않으면 인코딩해서 전달해야 한다. POST 방식은, HTTP BODY에 데이터를 포함해서 전달함. 웹 브라우저 사용자의 눈에는 직접적으로 파라미터가 노출되지 않고 길이 제한도 없다. 보통 GET은 가져올 때, POST는 수행하는 역할에 활용된다. GET은 SELECT성향이 있어서 서버에서 어떤 데이터를 가져와서 보여주는 용도로 활용된다. POST는 서버의 값이나 상태를 바꾸기 위해 활용된다. HTTP와 HTTPS 동작 순서 HTTP : TCP -> HTTP HTTPS: TCP -> SSL -> HTTP 차이 SSL( Secure Socket Layer )을 쓰냐 안쓰냐의 차이다. SSL프로토콜은 정보를 암호화시키고 이때 공개키와 개인키 두가지를 이용한다. HTTPS는 인터넷 상에서 정보를 암호화하기 위해 SSL 프로토콜을 이용해 데이터를 전송하고 있다는 것을 말한다. 즉, 문서 전송시 암호화 처리 유무에 따라 HTTP와 HTTPS로 나누어지는 것. 모든 사이트가 HTTPS로 하지 않는 이유는, 암호화 과정으로 인한 속도 저하가 발생하기 때문이다. OSI 7계층 OSI 7계층 통신 접속에서 완료까지의 과정을 7단계로 정의한 국제 통신 표준 규약 각 계층은 하위 계층의 기능만 이용하고, 상위 계층에게 기능을 제공한다. 일반적으로 하위 계층들은 하드웨어들로, 상위 계층들은 소프트웨어로 구현된다. 1 계층 ( PHYSICAL LAYER 물리 계층 ) 물리 계층(Physical Layer)은 컴퓨터 네트워킹의 OSI중 가장 낮은 계층이다. 어떤 하나의 네트워크에서 기본 네트워크 하드웨어 전송기술들로 구성된다. 네트워크의 높은 수준의 기능의 논리 데이터 구조를 기초로 하는 필수 계층이다. 2 계층 ( DATA LINK LAYER 데이터 링크 계층 ) 데이터 링크 계층 ( Data link Layer )은 포인트 투 포인트간 신뢰성있는 전송을 보장하기 위한 계층으로, CR.. HTTP Method Safe Methods 리소스를 수정하지 않는 메소드들 - OPTIONS, GET, HEAD 등 - 을 Safe하다고 말한다. 대부분의 경우 여러번 연산을 해도 값이 변하지 않는 멱등성(Idempotent)을 띄면 Safe 하다고 말한다. DELETE는 Idempotent하지만 리소스를 변경하므로 Safe하지는 않다. HEAD는 Response-Body 없이 Header만 얻기 위해 사용한다. OPTIONS는 해당 리소스에 대해 가능한 Operation이 무엇인지 응답을 얻기 위해 사용한다. 더보기 The OPTIONS method represents a request for information about the communication options available on the request/res.. URI - URL 그리고 URN URI ( Uniform Resource Identifier ) 현재 동작하고 있는 Server에서 특정 리소스에 접근하기 위해 사용하는 Path " 통합 자원 식별자 " URI는 인터넷의 우편물 주소 같은 것이다. 정보 리소스를 고유하게 식별하고 위치를 지정할 수 있다. 그리고 URI에는 URL과 URN 두 가지 형태가 있다. URL ( Uniform Resource Locator ) "통합 자원 지시자" URI의 가장 흔한 형태이다. URL은 특정 서버안에서 해당 리소스에 접근할 수 있는 상대적인 위치를 나타낸다. ex) "http://naver.com" -> 네이버의 URL "http://img.naver.net/static/www/dl_qr_naver.png" -> 네이버에 있는 dl_or_nav.. HTTP Keep Alive HTTP 구조 HTTP는 Connectionless 방식으로 , 연결을 매번 끊고 새로 생성하는 구조이다. 이는 Network 비용 측면에서 최초 연결을 하기 위해 많은 비용을 소비하는 구조다. Keep Alive? HTTP/1.1 부터는 이미 연결되어 있는 TCP연결을 재사용하는 Keep-Alive 라는 기능을 Default로 지원한다. 즉, Handshake 과정이 생략되므로 성능 향상을 기대할 수 있다. keep Alive 의 유지 시간은 연결된 Socket에 I/O Access가 마지막으로 종료된 시점부터 정의된 시간까지 Access가 없더라도 세션을 유지하는 구조이다. 즉 정의된 시간내에 Access가 이루어진다면 계속 연결된 상태를 유지할 수 있게 된다. Q . 왜 필요하지? 서버 자원은 무한.. 이전 1 2 다음