본문 바로가기
꾸준히

[TIL-174] js 에서의 JSON, 파일 관리를 위한 셸 스크립트, 완전탐색, 라따뚜이

by 무자비한 낭만주먹 2024. 1. 7.

[그림1]. 오늘도 감사한 공부 시작 ~

 

목차
0. 오늘의 학습 시간
1. 오늘 배운 것
2. 오늘의 알고리즘
3. 오늘의 CS
4. 영어 받아쓰기
5. 내일 할 일 (청사진)
6. 감사한 일

 

0. 오늘의 학습 시간
12:20 ~ 13:00 (40분): 오늘 너무 피곤해서 10분만 자고 공부하려 했는데 눈떠보니 12:20분이었다.. 50분이나 자버렸지만 좋은 컨디션으로 더 열심히 공부하라는 하늘의 뜻인가보다 ~ 하고 공부 시작했다.

20:30~24:00 (3시간 30분): 오늘 점심 공부를 못해서 주짓수 다녀와서 더 열심히 공부했다.

 

1. 오늘 배운 것
(1) javaScript에서 JSON을 다루는 디테일에 대해 공부했다.
(2) 로그 파일에 대한 삭제 정책을 리눅스 셸 스크립트로 크론을 활용해 관리하는 방법을 다시 검토해봤다.

 

2. 오늘의 알고리즘
오늘은 구간 칠하기 시뮬레이션 문제들과 리트코드를 풀었다. 리트 코드는 머지 소트 관련 문제였다.
 

Hi merget sort - undefined - LeetCode

View choichanhyeok's solution of undefined on LeetCode, the world's largest programming community.

leetcode.com

3. 이주의 CS
이번주는 모두의 네트워크 3장(: 물리 계층의 역할과 랜 카드의 구조) 진입

(2023-12-04)
- 데이터란 0과 1로 이루어진 신호를 이용한 "완전한 정보"의 조합으로 구성되어 있다.
- OSI 모델에서 이를 담당하는 곧은 맨 아래 "물리 계층"이다.
- 우리는 컴퓨터 통신을 위해 아날로그 신호를 디지털 신호로 변환한다.
- 아니 그럼 전기 신호는 아날로그 신호인데 어떻게 이진 신호를 전기 신호로 변환하는건가
- 이 역할을 해주는게 랜 카드이다. 랜 카드는 0과 1을 전기 신호로 변환해준다.
- 따라서 랜 카드가 속한 물리 계층은 "컴퓨터와 네트워크 장비 간에 전송되는 데이터를 전기 신호로 변환하는 계층"으로도 볼 수 있다. 

- 위에서 설명한 아날로그 신호(전기)가 실제 통신을 위해 지나가야 하는 길을 '전송 매체'라고 표현한다.
- 전송 매체는 크게 '유선'과 '무선'으로 나뉜다.
- 가장 많이 사용되는 건 '트위스트 페어 케이블이고 UTP와 STP가 있다.
- UTP는 실드가 없는 반면에 STP는 실드가 있어 외부 간섭(노이즈)에 강하다. 하지만 가격 또한 비싸서 사실 대부분 UTP를 사용한다
- *** 여기서 중요한게, 우리가 일반적으로 '랜 케이블'이라고 부르는 것들이 바로 UTP와STP다. ***
- 랜 케이블의 경우 '다이렉트 케이블'과 '크로스 케이블'로 분류할 수 있다. 차이점은 크로스 케이블의 경우 송수신측의 충돌을 막기 위해 선 번호를 교차해서 연결한다.

- 예전에는 리피터라는 장비를 사용해 "전기 신호를 정형하고 증폭"했다.
- 요즘은 다른 네트워크 장비가 리피터 기능을 지원해서 굳이 쓸 필요가 없다.
- 그 외에 '허브'라는 장비가 있다. 리피터와 다르게 포트가 여러개 있어서 여러대와 통신이 가능하다. 허브도 리피터와 마찬가지로 전기 신호를 정형하고 증폭하는 기능을 한다.
- 컴퓨터 여러대가 데이터를 주고받을 때 유용하지만 "1:1로 데이터를 전송하는게 아니라 연결된 모든 컴퓨터에  데이터를 전송하기에 주의"해야 한다. 이렇게 스스로 판단하지 않고 모든 포트로 전기 신호를 보내는 특징 떄문에 '더미 허브'라고도 불린다.
- 그 대책으로 나온게 스위치다.

(2023-12-05) 데이터 링크 계층: 랜에서 데이터 전송하기 파트 진입
- 물리 계층의 랜끼리 데이터를 주고 받으려면 아래서 두번째 계층인 "데이터 링크 계층"의 기술이 필요하다.
- 데이터 링크 계층은 네트워크 장비 간에 "신호를 주고 받는 규칙"을 정하는 계층
- 일반적으로 가장 많이 사용되는 규칙은 "이더넷"이다.   ** 미친 .. 이더넷이 이거였다고? **
- Q. 이더넷은 랜에서 적용되는 규칙인거네요 ?  A. 맞아요 ~ 이더넷은 허브와 같은 장비에 연결된 컴퓨터와 데이터를 주고 받을 때 사용해요
- 여기서 허브는 "전달받은 전기 신호를 복원시키고 해당 전기 신호를 전달받은 포트를 제외한 나머지 포트에 전달하는 기계"
- 그래서 연결된 모든 컴퓨터에 데이터를 보내버려서 특정 컴퓨터에만 데이터 보낼 수 없음. 그래서 못보게 하는 규칙을 정했는데 ..
- 그래서 보내려는 데이터에 "목적지 정보"를 추가해서 보내고, 그 이외의 컴퓨터는 데이터를 받더라도 무시하게 되어있음.
- 사실 안보내는게 아니라 받았는데 "무시"하도록 되어있는 것
- 또 여러대의 컴퓨터가 동시에 데이터를 보낼 수 있는데 이 경우에 "충돌"이 발생할 수 있어서 이더넷은 "여러 컴퓨터가 동시에 데이터를 전송해도 충돌이 일어나지 않는 구조"로 만들어졌다.
- 바로 이게 !!! ** 그 유명한 CSMA/CD ** 이다 !!
- CSMA/CD는 허브등의 장비의 특성상 동시에 여러 요청을 보낼 수 있는데 그로인해 발생하는 충돌 현상을 방지하기 위한 방법이다.
- 다만 아쉽게도 현재는 효율이 안좋다는 이유로 CSMA/CD를 쓰지 않고, "스위치"라는 네트워크 장비를 이용해 문제를 해결한다.
+ CSMA/CD에서 CS는 "데이터를 보내려고 하는 컴퓨터가 케이블에 신호가 흐르고 있는지 아닌지를 확인한다"라는 규칙이고 MA는 "케이블에 데이터가 흐르고 있지 않다면 데이터를 보내도 좋다"라는 규칙이다. CD는 "충돌이 발생하고 있는지를 확인한다"라는 규칙이다.

 

4. 오늘의 무자막 시청
오늘의 영상: 라따뚜이 (초반)
소재가 생각보다 신선했다. 주인공은 냄새를 엄청 잘 맡는 쥐인데 덕분에 '독 감별사'나 좋은 음식을 찾는 역할을 할 수 있었다. 하지만 예민해서 다른 쥐들과 다르게 쓰레기는 못먹었다. 이 특징 덕분에 나중에 요리사가 되나?

 

5. 내일 할 일 (청사진)
- 최장 연속 부분수열 파트 진입
- 익명 함수 활용 케이스인 Comparator에 대해서 공부한 내용 정리
- Compable에 대한 내용도 정리
- 네트워크 기초 공부

 

6. 감사한 일
점심에 푹 잘잤다. 점심시간에 오랜만에 쉬었는데 (20분 남기고 네트워크 책 좀 보긴 했지만) 하루가 너무 편했다. 가끔 이렇게 쉴 수 있음에 감사하다.

 

오늘 하루도 공부할 수 있어 크게 감사합니다

2023-12-05 개발자 최찬혁