728x90

CS 5

브라우저를 눌렀을때 발생하는 일

브라우저를 눌렀을때 발생하는 일 현재 우리는 여러 Application(Google Chrome, FireFox 등등) 을 통해서, 웹 싸이트를 쉽고 간단하게 돌아다닐 수 있다. 우리가 주소창에 www.google.com 을 입력했을때, 과연 어떤 일이 일어나게 될까? 기저 기반의 지식 해당 Process 를 이해하기 위해서는 우리가 알고있으면 좋은 여러가지 OSI 7 Layer, IP, MAC Address 등등 알면 좋은 컴퓨터 과학 지식들이 존재한다. 일단 이를 먼져 공부하고 알아보자. MAC Address 우리의 전자기기 장치에는 MAC Address 라는 고유한 ID 가 부여되어 있다. 이러한 고유한 ID 를 부여한 이유는 무엇일까? OSI 7 Layer 의 Data Link Layer 에서는 ..

CS 2022.08.28

Bit Operation 간단 정리

Bit Operation CD 같은 곳을 자세히 보면 굴곡 같은게 져있음을 확인할 수 있는데, 이를 빛으로 확인해서 어떤 값이 저장되어 있는지 확인할 수 있다. 예를 들면 긴줄은 1, 짧은 줄은 0 이라 해서 어떤 값을 표현할 수 있다는 것이다. Integer Integer 값을 저장하기 위해서 Java 에서는 4 Byte 의 저장공간이 필요하고 이는 Bit 로 표현하면 32 bits 에 해당한다. Int i = 8 을 저장한다면 다음과 같이 저장될 것이다. 즉 Integer 가 표현할 수 있는 가짓수는 (0,1)^32 - 1 에 속하게 되므로 2^32 - 1 에 속한다. 즉 4,294,967,296 가짓수의 수가 표현 가능하다. 하지만 보통 음의 정수를 표현해야 하므로 맨앞의 비트를 부호 비트로 두게 ..

CS 2022.07.28

Code 와 Blocking And Sync Model 에 관하여

개요 이 문서에서는 Blocking Structure / NonBlocking Structure 에 대해 내가 알고 있는 지식들을 연결하여 설명할 예정이다. 따라서 내용이 좀 길어질 수 있으며, 누군가에겐 루즈한 글일 수도 있다. Code Flow 현재 우리가 대중적으로 사용하는 컴퓨터에서 우리가 작성하는 Code 를 실행시키는 과정은 기본적으로 위에서 아래로 흐르려고 하는 성질이 있다. 나는 이를 "Top-Down" 이라고 표현한다. 가끔 condition 이나 go, switch 같은 회로를 만나면 위로 역전되는 현상이 있기도 하지만, 기본적으로는 위에서 아래로 흐르려는 방향이 있다. 즉, 그래서 대부분 우리는 코드를 동기적으로 짜는데 더 익숙할 수 밖에 없다. 기본적으로 이 문장 실행후 아래 문장이..

CS 2022.06.24

HTTP Pipelining

HTTP Pipelining 기존 HTTP/1.0 에서는 여러개의 Request 와 Response 를 순차적으로 받기 위해 아래와 같은 방식으로 Transaction 에서 요청과 응답을 처리했다. 위와 같은 형테이므로 여러건의 요청이 오게됬을때 하나의 과정 (요청을 보내고 응답을 받기까지) 이 마치고 난뒤에야 다음 요청에 대한 과정을 진행할 수 있는 구조였다. 그래서 여러건의 요청을 보내야 하는 요청-응답의 구조가 순차적이므로 상황에서는 시간이 오래걸릴수 밖에 없었다. 또한, 한가지 문제가 더 있었는데 똑같은 도메인에 대해 요청건을 많이 보내게 될 경우가 대다수인 브라우저 환경에서 새로운 요청을 보낼때 다시 TCP Connection 을 맺게 되는 경우 TCP 의 Slow Start 나, 다시 3-Wa..

CS 2022.05.22

End-To-End Header / Hob-by-Hob Header

End-To-End Header / Hob-by-Hob Header End-To-End Header end-to-end Header 는 마지막 Receiver 에게 전달되어야 하는 Header 입니다. 따라서 Proxy 서버에서 이를 임의로 변경해서는 안됩니다. Cache-Entry 의 일부로 저장되어야 Hob-By-Hob Header 현재 Transaction 에서 사용되는 Header 입니다. Hob-By-Hob Header 가 Final Receiver 에게 갔을때 Client 는 Nginx(Web Server) 와 Keep-Alive Connection 을 맺고 싶어 Connection: keep-alive 헤더를 넘겨주었는데, Nginx 에서 이를 해석하지 못하고 Application Serve..

CS 2022.05.22
728x90