분류 전체보기(70)
-
OSI 7계층 자세히 알아보기 - 네트워크 계층
▶ 네트워크 계층이란? OSI 7계층 중 3계층으로, 서로 다른 두 네트워크 간 데이터 전송을 용이하게 하는 역할을 한다. 패킷이라는 데이터를 목적지까지 전달하기 위해 IP주소를 이용해 최적의 물리적 경로를 찾는 '라우팅(routing)' 방식을 사용하며, 이를 위해 IP를 관리하고 패킷을 분할해 프로토콜을 식별하고 오류를 탐지하기도 한다. 인터넷 프로토콜 v4(IPv4) 및 IPv6 등을 예로 들 수 있다. IP 주소: 각각의 컴퓨터가 인터넷에 접속하기 위해 부여받은 고유한 주소라우팅 (routing) : IP주소를 이용해 데이터에서 대상까지 최적의 경로를 결정한다. 논리적 주소 지정: 각 장치를 고유하게 식별하기 위해 네트워크 계층에서 주소 지정 체계를 정의한다. 발신자와 수신자의 IP 주소는 네트..
2024.09.09 -
AWS에서 사라진 EC2 찾기
AWS에서 EC2와 RDS를 처음 만들어보게 된 날인 만큼, 요금 폭탄의 괴담을 떠올리며 인스턴스가 중지 상태인지 여러번 확인하고 나서야 식사 시간을 가질 수 있었다. 그러나 다시 강의를 틀고 MySQL 연결 작업을 하는데, 이상하게 'Error: connect ETIMEDOUT' 메세지가 뜨며 RDS에 연결되지 않는 현상이 발생했다. 인스턴스를 중지해둔 상태라 그런가? 연결은 딱히 안해놨지만, 다 켜놓고 테스트 해보자- 라는 마음으로 EC2 인스턴스 창으로 넘어갔다. 뭐야 내 EC2 돌려줘요 아무리 새로고침을 해도, 세팅했던 것이 꿈인 것처럼 인스턴스가 사라져 있었다. 보안그룹은 분명히 남아있는데, 그 보안그룹을 사용하고 있는 인스턴스가 대체 어디로 사라진 것인지 솜사탕 씻은 너구리처럼 AWS 사이트..
2024.09.06 -
[프로그래머스] 푸드 파이트 대회(JavaScript)
◈ 고민 시작알고리즘 문제를 풀면서 문제가 이해되지 않아 여러번 읽게 된 건 이번이 처음인 것 같다. 캡쳐에는 보이지 않지만, food의 첫번째 요소는 물이기 때문에 "1"이 고정이며, result의 중앙에 "0"으로 return 되어야 한다. 예시에서 유추할 수 있듯, food의 각 요소는 음식의 갯수이며, index값이 곧 칼로리에 따른 음식의 고유 넘버이다. 문제를 풀기 위한 주의점을 간단하게 정리하자면 하기와 같다.food[0] = 물, result 중앙에 "0"으로 return 되어야 함food[n] = 음식의 갯수, n은 칼로리 순으로 정렬된 음식의 고유 넘버선수가 1:1로 매칭되며, 동일한 음식이 제공되어야 하므로 2개 미만으로 준비된 음식은 사용할 수 없다.홀수로 준비된 음식은 선수들에게 ..
2024.09.05 -
OSI 7계층 자세히 알아보기 - 데이터 링크 계층
▶ 데이터 링크 계층이란? OSI 7계층 중, 네트워크를 통해 물리 계층이 이미 존재하는 두 시스템을 연결하는 데에 사용되는 기술/계층을 말한다. 데이터의 흐름 제어 및 오류 제어가 주 기능이며, 네트워크 계층으로부터 받아온 패킷을 프레임이라는 더 작은 조각으로 세분화하기도 한다. 이더넷, 와이파이 등을 예로 들 수 있다. 물리 계층만 존재할 경우, 데이터 신호를 담고 있는 하드웨어 매개체들을 직접적으로 모두 연결해야만 한다. 팀프로젝트 하나 하려고 팀원들의 컴퓨터를 각각, 모두, 서로 연결해야 하는 것이다. 이처럼 비효율적인 방식을 지양하기 위해 상위 계층들이 생겼다고 할 수 있다. 상위 계층 중에서 특히 '데이터 링크 계층'은 신호를 올바른 목적지까지 전달하고, 전송 중에 발생할 수 있는 오류들을 ..
2024.09.04 -
[Node.js] 미들웨어와 라이브러리 훑어보기
▶미들웨어 (Middleware)서버의 요청(Request) - 응답(Response) 과정 중간에서 특정 기능을 수행하는 함수라고 할 수 있다. 보통 웹 서버에서 요청을 받을때, 모든 요청에 대한 공통적인 처리를 하고 싶을 때 사용한다. 모든 요청에 대한 로그를 남기거나, 특정 사용자만 접근할 수 있게 하는 등의 처리가 필요한 상황 등을 예로 들 수 있다. 또한 사용자가 웹 페이지에서 Form을 통해 전송한 데이터를 서버에서 쉽게 파싱(Body Parser)하여 사용할 수 있게 해주는 미들웨어도 존재한다. Node.js는 Express.js라는 웹 애플리케이션 프레임워크를 통해 미들웨어를 지원한다. 자주 쓰이는 미들웨어의 형태는 하기와 같다.app.use(express.urlencoded({ exten..
2024.09.04 -
[알고리즘 코드카타] 두 개 뽑아서 더하기(JavaScript)
◈ 고민 시작서로 다른 인덱스에 있는 두 개의 수를 뽑아서 더했을 때 나오는 수의 모든 경우의 수를 구하는 문제이다. numbers에서 0번째 인덱스에 있는 수를 뽑았다면, 두번째로 뽑을 수는 1번째~n번째 수를 뽑아야 한다. 오름차순으로 정리함과 동시에 중복 제거 처리도 해야한다. function solution(numbers) { let answer = []; for(let i=0; i 위와 같은 구조로 코드를 짜보기로 했다. 오름차순은 이전에 썼던 sort((a,b) => (a-b))를 사용하되, for문 안에서 돌면 불필요한 처리를 반복하게 되므로 밖에서 한번에 정리해주기로 했다. 중복 제거는 해본 적이 없는 것 같아서, 구글링의 힘을 빌렸다. forEach, filter 등 다..
2024.09.03