728x90 42Seoul8 URL(Uniform Resource Identifier) [webserv개념 1-2] URLURL(Uniform Resource Identifier)이란 웹을 뒷받침하는 주소체계입니다.URI? URL? URN? 각각 무슨 차이가 있을까?URI는 URL과 URN을 모두 포함하고 있는 개념입니다. URL은 Locator로 URN은 이름으로 추가 분류된 개념입니다.URI (Uniform Resource Identifier) URL (L : Locator), URN(N : Name)Uniform : 리소스를 식별하는 통일된 방식을 의미합니다.Resource : 자원, URI 로 식별할 수 있는 모든 것을 의미합니다.Identifier : 다른 항목과 구분하는데 필요한 정보를 의미합니다.URL : Locator 로 리소스가 있는 위치를 지정하는 방식입니다.URN : NAME으로 리소스에 이름을 부.. 2024. 5. 3. HTTP 개관 및 버전별 특징 [webserv 개념 1-1] HTTP의 정의HTTP는 HTML 문서와 같은 리소스를 가져올 수 있도록 해주는 프로토콜입니다.여기서 HTTP 요청의 대상을 "리소스"라고 하며, HTTP는 리소스의 특성을 제한하지 않습니다.다만, 리소스와 상호 작용하는 데 사용할 수 있는 인터페이스를 정의할 뿐입니다.대부분의 리소스는 URI(Uniform Resource Identifier)로 식별됩니다.클라이언트-서버 프로토콜 : 수신자(거의 웹브라우저)에 의해 요청이 초기화 되는 프로토콜을 말합니다.HTTP의 특징 : 요청(Request)과 응답(response)으로 통신 한다.요청은 일반적으로 브라우저지만, 검색엔진 인덱스 채우는 로봇인 경우도 존재합니다.요청과 응답 사이에는 여러 개체들이 있습니다.( 예 : 게이트웨이 또는 캐시 역할을 하는 프.. 2024. 4. 26. Webserv 과제 분석 및 개요 인사말안녕하세요. 너무 늦게 찾아왔네요. 가이드를 만들고자고 다짐한 지 한참인데, 다른 할 일들을 하다 보니 너무 늦어졌네요. 꽤 긴 시리즈가 될 것 같은데요, 이제 시작해보고자 합니다.이번 게시물은 Webserv 과제를 한글로 분석해보고, 과제에서 공부해야 하는 개념들을 목록으로 나누겠습니다.과제 요약이 과제를 한 문장으로 요약하면 아래 문장으로 나타낼 수 있을 것 같습니다.HTTP 1.1 기준을 따르는 Nginx와 유사하게 동작하는 웹서버를 만들어라.오 그러면 nginx는 깃허브에 소스코드를 공개하니까 그걸 따라서 만들면 되겠다..! 라고 생각하고 처음에는 nginx 깃허브를 봤습니다.하지만 저희는 nginx의 동작을 참고하는 것이지, nginx를 똑같이 만들려먼 3명의 팀원으로는 1년이 걸려도 모자.. 2024. 4. 25. Webserv 그 길었던 과정의 기록[1편] 시작하면서 42 공통 과정 중 큰 규모와 긴 기간, 난이도로 악명 높은 WebServ 과제를 진행하였습니다.과제는 공부와 설계 그리고 코드 완성까지 해서, 2023년 6월 26일부터 2023년 8월 21일까지 진행하였습니다.팀원은 총 4명이서 진행하였고, 진행과정 및 팀 프로젝트 후기에서 어떻게 협업을 진행했는지 다루도록 하겠습니다.WebServ 과제를 한 단어로 말하면 HTTP1.1로 동작하는 웹서버를 만드는 과제입니다.과제의 공부했던 내용과 코드에 대한 디테일 한 부분은 추후에 게시물로 가이드 형식으로 남기고 이곳에는 프로젝트를 어떻게 진행했는지와 느낀점을 위주로 쓰는 회고록을 먼저 작성하도록 하겠습니다.개념공부 시간 (대략 1주~2주)과제의 주제는 'nginx의 동작을 참고하여 웹서버를 만들기'였습.. 2024. 1. 28. Netpractice를 3일만에 끝내보자. (6~10번 문제풀이)(3/3) 레벨 6 문제 간단 정답 해설 오히려 상당히 쉬운 문제입니다. 처음으로 인터넷이 등장하는데요, 인터넷은 비록 그림에서는 목적지가 하나로 보여도 전세계로 연결되는 공용 네트워크이기 때문에 왼쪽의 목적지에 default를 사용할 수 없고 반드시 지정을 해줘야 합니다. 그것만 안다면 5번과 비슷하게 어려운 점이 없습니다. 문제 풀이 우선 저희는 서브넷 마스크랑 인터넷이 가야하는 네트워크의 위치를 알아서 저곳을 먼저 채울 수 있죠. 다음으로 인터페이스의 IP만 채우면 되는데요 서브넷 마스크에 의해 R1의 인터페이스 IP는 70.49.180.129~ 70.49.180.254 가 가능하답니다~~ 저는 여기서 궁금증이 조금 생겼는데, 과연 라우터의 라우팅 태이블은 무엇을 가리기코 있는건지 살짝 이해가 안 갔었는데, .. 2023. 1. 11. Netpractice를 3일만에 끝내보자.(문제풀이 및 개념공부 1~5번)(2/3) 시작 전 간단한 서브넷 마스킹 설명 간단하게 서브넷 마스크의 특징을 설명하겠습니다. 더 깊은 원리에 대해 공부하고 싶다면 제가 정리한 글과 구글의 다양한 글을 참고하세요! 간단 ip와 서브넷 마스크의 특징 같은 네트워크에 속한 ip의 서브넷 마스크는 같아야합니다. 같은 네트워크에 속한 ip는 같을 수 없습니다. 서브넷 마스크와 ip주소와의 AND연산을 해서 나온 결과값이 네트워크 주소입니다. 서브넷 마스크는 반드시 앞에서부터 1로 순서대로 채워져있습니다 255.0.255.0 —>이건 불가능하다는 의미입니다. 255.255.255.1 —>불가능 255.255.255.254—> 가능 255.255.128.0 —> 가능 서브넷 마스크로 ip주소를 나누게 되면 [ip] = [네트워크 주소 / 호스트 주소] 이렇.. 2023. 1. 11. Netpractice를 3일만에 끝내보자. (시작 전 개념공부)(1/3) 참고 링크시간이 많다면 위의 글을 다 보시는 것을 추천합니다.서브넷 마스크와 서브넷팅 계산법우리가 흔히 사용하는 IP 주소 체계인 IPv4는 이론적으로 42억 개의 네트워크 장치에 IP Address를 부여할 수 있습니다. 언뜻 보면 많아 보이지만 컴퓨터뿐 아니라 스마트폰까지 대중화된 시대에 42억 개는 그리 많은 수가 아닙니다. 그런데 문제는 42억 개를 각 네트워크 영역마다 아무렇게 둘 수 없다는 점입니다. 극단적인 예시로 A 클래스를 보시면 이해하기 쉽습니다.http://korean-daeddo.blogspot.com/2016/01/blog-post_26.html공인 IP와 사설 IP... 다양한 IP 유형의 차이는?IP 주소는 인터넷 프로토콜 주소를 의미하며 숫자로 구성되어 인터넷에 연결된 장치를.. 2023. 1. 11. 42서울 ft_printf 시작 전 공부 정리(printf직접 구현하기) 구조체 값을 초기화 하는 방법 : ft_memset printf함수가 write보다 늦게 나오는 이유 printf함수는 라인 버퍼링을 사용하기 때문이다. line buffering 이란? 버퍼에 개행 문자가 입력될 때 마다 출력한다. 즉 개행문자가 들어오지 않는다면 버퍼에 계속 쌓아두다가 더이상 실행 할 명령이 없을 때 해당 버퍼의 내용을 출력한다.(과제에서는 실제 printf처럼 버퍼관리를 수행해서는 안된다고 한다.) 가변인자 목록(코딩도장) 42서울 ft_printf 시작 전 공부 정(printf직접 구현하기) 구조체 값을 초기화 하는 방법 : ft_memset printf함수가 write보다 늦게 나오는 이유 printf함수는 라인 버퍼링을 사용하기 때문이다. line buffering 이란? 버퍼.. 2023. 1. 9. 이전 1 다음 728x90