728x90
반응형

네트워크 39

SSL, Secure Sockets Layer 란 무엇일까? (+HTTPS)

이것의 목적은 인터넷에서 보안을 위해서다. 파일과 같은 것들을 안전하게 주고 받기 위해 사용하는 것이다. 인터넷 통신은 특히 위험하다. 통신 상대를 속이는, 중간에 데이터를 가로채서 변조하거나 도청하는 등 수많은 위험에 노출되어있다. 인터넷 상에서 결제, 수납, 파일 다운로드 등 중요한 작업을 할 때가 많은데 SSL을 통하여 네트워크에서 서로 인증함으로써 위에 언급한 위험을 피하는 것이다. 일반적으로 증명서를 사용해서 정당성을 확보하고 서로 간의 암호화를 확인하여 암호화된 통신을 시작하는 것이다. 그렇다면 HTTPS 는 무엇일까? HTTP + SSL이다. HyperText Transfer Protocol over SSL의 약자다. WWW 서비스 데이터 통신에는 이것을 사용한다. 웹 서버와 웹 브라우저 간..

TCP vs UDP 비교

TCP, Transmission Control Protocol UDP, User Datagram Protocol 정확히 무엇인지 알아보자. 또한 각각의 특징들을 알아보자 또한 위의 것들은 통신에서의 프로토콜이다. 여기서 통신이란 호스트 컴퓨터에 있는 프로세스 간의 통신이라고 하는 것이 더 정확하다. **IP는 호스트와 호스트 간의 통신에만 책임이 있는 것이다. TCP, UDP와는 다른 프로토콜임을 인지하자 -> 포트번호에 대해서 알면 더 쉽다. 우선 TCP부터 알아보자 OSI 참조 모델에서 전송 계층에서는 신뢰성이 높은 통신을 보증해야 한다. **신뢰성이란 데이터 손실 없이 정확하게 전달하는 것을 의미한다. 위의 그림을 설명하자면 3단계로 나눌 수 있다. 1. 클라이언트는 초기 순서 번호를 선택한 SYN..

클라이언트와 서버, Client & Server

아래 그림을 보면 어떤 생각이 나는가? 이것이 클라이언트와 서버다. 게임에서는 클라이언트 프로그램이 작동하지 않는다는 말로 게임이 꺼지기도 하는데.. 이 또한 서버와의 접속이 끊어져서 그렇다. 또한 Server는 진짜 Serve, 대접하다의 er이 붙어서 Server가 된 말이다. 즉, 대접하는 사람, 서비스를 제공하는 사람이라고 보면 된다. 클라이언트, Client 또한 손님, 요구하는 사람이 된다. 일반적으로 옛날의 컴퓨터에서는 P2P, Peer to Peer 관계로 이루어져 있어서 네트워크의 클라이언트들이 파일이나 프린터와 같은 자원을 공유하는 형태의 네트워크가 많았는데 여기서 나의 파일을 다른 컴퓨터가 쓰고 싶을 때는 내가 Server가 되고 다른 컴퓨터가 Client가 되는 것이었다. 즉, 일방..

신경망 기본 원리 - 합성함수

심하게 말하면 개나 소나 심지어 물고기까지 한다는 딥러닝... 교수님께서는 딥러닝을 모르고도 쓸 수 있는 것이 딥러닝인 반면에 딥러닝을 알려고도 하지 않는 사람들에게 비판 아닌 비판을 하셨다. 내 마음이 심히 찔려서 기초부터 공부하기로 하였다. 시작하자 신경망의 동작원리를 알기 위한 모델을 소개한다. 바로 합성함수다. 정확하게 말하면 합성함수에 대한 도함수, derivative에 대해서 알아본다. ?? 왜 합성함수냐..??라고 생각할텐데 쉽게 설명하자면 원숭이 엉덩이는 빨개 빨가면 사과 사과는 맛있어 맛있으면 바나나 바나나는 길어 길으면 기차 기차는 빨라 빠르면 비행기...와 같이 원숭이 엉덩이에서 비행기까지 도출할 수 있다. 실제로 아무관계가 없을지라도 위의 과정을 거쳐서 나왔으므로 맞는 말이라고 생각..

Subnet Mask, 서브넷 마스크란?

우선 이름을 보니 우선 낯익다. 네트워크 설정을 열어보니 이런 것이 있다. 이것이 무엇일까?? Sub는 하위의 란 뜻이고 Net은 그물이라는 뜻으로 네트워크 망을 말한다. Mask는 실제로 가면과 같이 무엇인가를 숨기기 위하여 가리는 것을 의미한다. 즉, 합해서보면 네트워크를 하위 단위로 나누기 위한 무엇인가를 말하는 것 같다. 정말로 그렇다. IP 주소는 우리가 사용하지만 바로 직접 사용되지는 않는다. 서브넷 마스키을 거쳐서 변환되어 사용된다. 즉, 주어진 IP 주소를 네트워크 환경에 따라서 나누어주기 위해서 사용하는 것이다. 그렇게 나누는 이유는 1. 브로드캐스트 영역을 나누어 로드 줄이기 위함 2. IP 주소를 효율적으로 사용하기 위함 서브넷 마스크가 IP를 변환하는 과정은 논리곱 AND를 이용한다..

유니캐스트, 브로드캐스트, 멀티캐스트 (Uni, Broad, Multi)

접두사만 바뀌고 다 cast가 붙는다. cast는 던지다라는 뜻으로 uni- 하나 broad - 사방 multi - 다중 의 뜻과 합쳐져 쓰인다. 그렇다면 네트워크에서 던지는 것은 뭘 던진다는 것일까? 뻔하다. 데이터다. 위 3가지 용어는 통신 방식의 차이이다. 유니캐스트부터 알아보자 일단 통신이 되려면 전송되는 프레임,Frame 에 출발지 주소, 목적지 주소, MAC address가 쓰여있어야 한다. 즉, 주소를 쓸 때 하나의 PC에 대해서만 쓰여야 한다는 말이다. 편지와 같다. 보내는 사람과 받는 사람만 있는 것과 마찬가지다. 이게 바로 Unicast이다. 이러한 방식으로 임의의 PC가 유니캐스트 프레임을 보내면 로컬 네트워크 상의 모든 PC들은 일단 이 프레임을 받아들여서 자신의 맥 어드레스와 비교..

Packet, 패킷이란? [네트워크]

패킷이란 데이터 전송의 단위로 Network 계층 위로부터 패킷이라고 부른다. 실제 전송의 단위라고 보면 되겠다. 패킷의 크기는 네트워크 종류마다 달라진다. 데이터를 패킷단위로 쪼개서 보내는 이유는 한 번에 보내기도 어려울 뿐더러 대역폭의 한계가 있다. 또한 에러 정정이 어렵다. Network 계층이 host로부터 host로의 패킷 전달을 책임지고 진행한다. 아래와 같은 식이다. 살다 보면 Packet loss 라고 패킷이 손실되는 경우가 생긴다. 해당 패킷이 손실되는 경우는 크게 2가지가 있다. 1. Congestion, 네트워크 혼잡, 정체 네트워크가 수용할 수 있는 최대 용량에 도달하게 되면 패킷은 전달될 순서를 기다리지만 네트워크의 성능이 급격하게 낮아져 패킷을 저장할 수 없는 경우 그 이상의 패..

데이터 스트림, Data Stream [네트워크]

우선 Data Stream이란 것이 무엇일까? ** 사실 스트림이란 것 자체가 중요한 것은 아니지만 알고는 가자 스트림(stream)이란 데이터의 흐름이다. 네트워크 책에도 많이 나오곤 한다. 네이버에서는.. 한 번의 읽기 또는 쓰기 동작으로 전송되는 정보. 한 장치에서 다른 장치로 보내지는 모든 정보 진짜 데이터가 열을 지어 차례대로 입력되는 것을 의미한다. 정해진 포맷에 따라 문자나 바이트 형식으로 송수신되는 것을 의미한다. 데이터는 지속적으로 생성되고 시간에 따라 다른 값이 입력될 수 있다. 뭐 이정도 되겠다. 네트워크 책이랑 같다. 아래 코드는 파일 읽기, 출력하는 코드다. 역시 읽을 때 쓰는 stream과 같은 stream이다. PrintFileContents() { fp = OpenFile(“..

Network Service, 네트워크 품질 [네트워크]

우리가 흔히 말하는 네트워크, 인터넷이 좋다는 것의 의미는 무엇일까? 먼저 용어들을 깔고 알아보자 네트워크의 품질을 결정하는 요소는 크게 4가지 대역폭, Bandwidth (Throughput, 처리량)이라고도 함 지연시간, Latency (신뢰도, 일관성) 손실, Loss 흔히 "속도"라고 말할 것이다. 하지만 이 "속도"가 의미하는 바는 무엇일까? 사실 이 속도는 대역폭, Bandwidth라고 할 수 있다. 왜냐하면 우리가 100을 요청했을 때 1씩 100번을 들여오는 것이냐 50씩 2번을 들여오는 것이냐가 곧 속도가 될 것이기 때문이다. 그래서 일반적으로 bps로 표현된다. 요즘은 10Gbps라던가..? 전화선, 랜선을 비교해보았는가? 선의 개수도 다를 뿐더러 굵기도 다르다. 이를 통해 물리적인 전..

Circuit Switching vs Packet Switching [네트워크]

무엇인가 연결한다는 관점에서 등장하는 흔한 주제인 패킷과 서킷에 대해서 알아보도록하자 먼저 들어가기 전에 단어 몇개 알고 들어가자. Packet은 전송 단위를 의미한다. Circuit이란 회로라고 생각하면된다. Switching이란 교환을 뜻한다 Circuit Swtiching은 전화를 예로 많이 든다. 1:1 통신의 단적인 예이기 때문( 물론 그룹통화도 가능하다.. 군대에서 통신교육을 받으면.. 안다 ㅎ) 자원과 경로를 미리 확보한다. 그래서 대기 없이 통신이 바로 가능하다. -> 그래서 RTS(Real-Time Service) 에 적합하다. 즉, 사용자는 바로 해당 경로를 이용하여 자원을 전송하거나 받을 수 있다. 우리가 인터넷 전화보다 그냥 집전화로 통화하는 것이 음질이 더 좋은 이유였다. (하지만..

728x90
반응형