Blob Markets에서 기본 수수료 조정 및 최적화

이 기사는 기계로 번역되었습니다
원문 표시

Blob Markets에서 기본 수수료 조정 및 최적화

이 주제에 대한 의견과 토론에 참여해 주신 Ansgar , Barnabé , Alex , Georgios , Roman , Dankrad 와 노력해 주신 Bert , Gajinder , Max 께 특별히 감사드립니다!

요약:
제안된 모든 업데이트는 이론적으로는 의미가 있습니다. Pectra에서 해야 할까요? 상황에 따라 다릅니다.

  1. 최소 블롭 수수료를 높이면 가격을 더 빨리 파악할 수 있습니다.
  2. 블롭 가스 업데이트 부분을 자동화함으로써 미래에도 사용이 가능합니다.
  3. 초과 가스를 정규화하면 타겟을 늘리는 포크(Fork) 이후에 블롭 기반 수수료가 떨어지는 에지 가스를 방지할 수 있지만, 그렇게 하지 않아도 나쁜 일이 일어날 리가 없습니다.
  4. 기본 수수료 확장을 대칭으로 만들면 메커니즘이 그대로 유지됩니다(0과 6 블롭의 극단에서 \pm 12.5% ​​± 12.5 확장)

저는 이더리움 개선 제안(EIP)-7762 의 모든 변경 사항을 요약하여 대상/최대치를 3/6에서 4/6으로 변경할 때 함께 제공하는 것을 제안합니다. Pectra가 더 많은 변경 사항을 추가하여 너무 커질까 봐 걱정된다면 다음 순서로 중요도가 감소하는 방식으로 제안합니다.

  1. 얼룩 수를 늘립니다.
    a) 보수적으로 4/6을 하거나, 자신감이 있다면 6/9에 가깝게 하세요.
    b) 더 많은 블롭을 수용할 수 있도록 EL 페이로드 크기를 크게 줄이기 위해 이더리움 개선 제안(EIP)-7623을 제공합니다.
  2. 설명된 기본 요금 변경 사항을 배송합니다.

Blob 수수료 메커니즘 요약

이더리움 개선 제안(EIP)-4844 의 출시로 이더리움은 수수료 시장에 새로운 차원을 추가했습니다. 자체 기본 수수료와 함께 제공되는 Blob은 데이터를 위한 전용 공간을 제공하여 애플리케이션과 롤업이 이더리움 가상 머신(EVM) 실행 없이도 체인에 정보를 게시할 수 있도록 합니다.
블롭 수수료 구조는 기본 수수료 업데이트 규칙에 따라 관리되며, 이는 다음 공식을 근사합니다.

base_fee_per_blob_gas = MIN_BASE_FEE_PER_BLOB_GAS * e**(excess_blob_gas / BLOB_BASE_FEE_UPDATE_FRACTION)

이 방정식에서, excess_blob_gas 목표량( 블록 당 TARGET_BLOB_GAS_PER_BLOCK )과 비교한 블롭 가스 사용량의 총 잉여를 나타냅니다. 이더리움 개선 제안(EIP)-1559 수수료 메커니즘과 마찬가지로, 이 공식은 자체 조정됩니다. 과도한 블롭 가스가 증가함에 따라, base_fee_per_blob_gas 급수적으로 상승하여 과도한 사용을 억제하고, 롤업이 기본 수수료를 "공정한" 가격으로 인식하는 수준으로 초과를 다시 밀어냅니다.

프로세스는 다음과 같이 작동합니다. 블록 N X 블롭 가스를 소모하면 블록 N+1 에서 excess_blob_gas X - TARGET_BLOB_GAS_PER_BLOCK 만큼 증가합니다. 결과적으로 블록 N+1base_fee_per_blob_gas 블롭 가스 e**((X - TARGET_BLOB_GAS_PER_BLOCK) / BLOB_BASE_FEE_UPDATE_FRACTION) 의 계수로 조정됩니다.

매개변수 BLOB_BASE_FEE_UPDATE_FRACTION 블롭 기반 수수료에 대한 최대 가능한 변경률을 제어합니다. 이 비율은 e**(TARGET_BLOB_GAS_PER_BLOCK / BLOB_BASE_FEE_UPDATE_FRACTION) 을 기준으로 블록 당 약 1.125 의 목표 최대 증가 및 감소를 달성하도록 설정됩니다.

초기 출시에서 블롭 가격은 낮을 것으로 예상되었으며, 시장이 균형 또는 "공정한" 가격(즉, 가격 발견)을 찾을 때까지 점진적으로 증가할 것으로 예상되었습니다. 이더리움 개선 제안(EIP)- 4844 에서 도입한 블롭 수수료 시장은 이더리움 개선 제안(EIP)-1559 와 유사한 구조를 따르며, 기본 수수료는 수요에 따라 동적으로 조정됩니다.

"가격 발견" 지점에 도달하다

2024년 11월 현재, 이더리움은 기본 수수료에 상관없이 롤업이 블롭을 게시하는 것을 멈추고 대신 기본 수수료를 상당히 안정적으로 유지하는 양의 블롭을 게시하는 수요 수준에 도달했습니다. 사람들은 그것을 "가격 발견" 단계라고 부르기를 좋아하는데, 그것은 단지 그 특정 시점에서 특정 기본 수수료 X가 공정한 가격으로 간주된다는 것을 의미할 뿐입니다. "가격 발견" 시점에 롤업은 더 이상 블롭 기본 수수료를 고려하지 않고 블록 당 6개의 블롭을 일관되게 게시하지 않습니다. 더 이상 무시할 수 없기 때문입니다. 그러나 공급이 증가하지 않는(즉, 사용 가능한 블롭이 더 많아짐) 블롭에 대한 수요가 증가하면 블롭 수수료가 높아집니다. 가격은 모든 슬롯에서 12초마다 발견되지만 "가격 발견"이라는 이 단순화된 개념을 사용하는 것은 용서해 주십시오.

제안된 조정 사항 및 장단점

다가오는 Pectra 포크(Fork) 앞두고 블롭 확장(3/6에서 4/6 또는 더 정교하게는 6/9로)에 대한 수요가 분명 존재하며, 이는 블롭 수수료 시장에 대한 조정이 필요할 수 있습니다.

다음 섹션에서는 블롭 수수료 시장에 발생할 수 있는 4가지 변화를 간략히 살펴보고 각 변화와 관련된 이점과 과제에 대해 논의하겠습니다.

  1. 최소 기본 수수료 조정 : 가장 간단한 조정 중 하나는 Max Resnick이 제안한 대로 MIN_BASE_FEE 매개변수를 수정하는 것입니다.
  2. Blob 기반 수수료 업데이트 비율 자동화 : 간단한 변경을 통해 Blob 기반 수수료 업데이트 비율이 대상 Blob 수에 따라 조정되도록 했습니다.
  3. 과잉 가스의 정규화 : Bert Kellerman과 Gajinder의 또 다른 제안은 과잉 가스 사용에 대한 계산을 "정규화"하는 것을 제안합니다.
  4. 기본 수수료 업데이트 대칭화 : 기본 수수료 공식을 조정하기 위한 제안.

1. MIN_BASE_FEE_PER_BLOB_GAS 증가( 이더리움 개선 제안(EIP)-7762 )

블롭 기본 수수료는 0에서 시작하여 가격 발견 지점까지 천천히 증가합니다. ~6블록(블롭 6개)마다 기본 수수료가 두 배가 되지만 1웨이에서 예를 들어 5gwei와 같이 더 합리적인 가격까지 가는 데는 먼 길이 있습니다. 그 수준에 도달할 때까지 가격이 많이 변동할 수 있으며 롤업은 기본적으로 "너무" 저렴한 DA가 됩니다.

2024-11-07 05-33-46의 스크린샷
2024-11-07 05-33-46 925×435 35.5KB 의 스크린샷

언급된 이더리움 개선 제안(EIP) 최소 기본 수수료를 1 wei에서 ~0.034 gwei로 인상하는 것을 제안합니다. 이를 통해 가격 발견까지의 시간이 단축되고 따라서 롤업이 "공정"하다고 여겨지는 더 안정적인 가격 범위로 더 빠르게 이동합니다.

기본 요금이 1gwei에서 5gwei로 오르려면 시간이 걸립니다.
\frac{\ln\left(\frac{\text{기본_수수료_목표}}{\text{기본_수수료_시작}}\right)}{\text{성장_속도}} = \frac{\ln(5 \times 10^9 / 1)}{0.117} \약 190 \text{블록} ln ( 기본 수수료 목표 기본 수수료 시작 ) 성장률 = ( 5 × 10 9 / 1 ) 0.117 190 블록 이고 모든 블록에는 6개의 덩어리가 있어야 합니다. 이는 약 38분과 같습니다.

새롭게 증가된 MIN_BASE_FEE_PER_BLOB_GAS 사용하면 이 기간이 다음과 같이 단축됩니다.
\frac{\ln(5 \times 10^9 / 2^{25})}{0.117} \약 \text{42 블록} ln ( 5 × 10 9 / 2 25 ) 0.117 42블록 , 8.4분.

2024-11-07 05-41-23의 스크린샷
2024-11-07 05-41-23 925×435 33.3KB 의 스크린샷

매우 중요한 경고/구현 세부 사항:

MIN_BASE_FEE_PER_BLOB_GAS 를 업데이트할 때 초과 가스를 재설정해야 합니다 .

그 이유는 그렇지 않으면 포크(Fork) 직후에 블롭 기반 수수료가 예측할 수 없이 극심하게 급등하는 것을 보게 될 것이기 때문입니다. 최소 기반 수수료는 기본 수수료에 대한 배수 역할을 하며, 그 지점까지 누적된 초과 가스가 재설정되지 않으면 이에 대한 작은 조정이 기본 수수료에 큰 영향을 미칠 수 있기 때문입니다.
다음은 그에 대한 예입니다. 1에서 5웨이로 "무의미한" 증가가 기본 수수료를 엄청나게 치솟게 만들기에 충분하고, 이후 롤업은 가격이 다시 안정될 때까지 일정 기간 기다려야 합니다.

2024-11-08 11-05-08의 스크린샷
2024-11-08 11-05-08 970×429 27.5KB 의 스크린샷

요약하다

장점:

  • 더 빠른 "가격 발견"
  • 공급 < 수요일 때는 변동성이 낮아집니다.

단점:

  • 프로토콜을 수정해야 하며, 일반적으로 문제가 없는 것에 대해서는 "마이크로 최적화"를 하지 않습니다.
  • 초과 가스가 재설정되면 가격을 다시 발견하는 단계를 거쳐야 하지만, 더 높은 수준에서 시작해서 그 시간을 단축해야 합니다.

이는 "골화 대 최적화"로 단순화할 수 있으며, 제 생각에는 옳고 그름이 없습니다. 개인적으로는 프로토콜을 건드리지 않는 것도 가치가 있다고 생각합니다.


2. Blob Base Fee Update Fraction 자동화

이 변경은 매우 간단합니다. 현재 업데이트 분수는 이더리움 개선 제안(EIP)-4844 에 지정된 대로 3338477로 설정됩니다. \frac{target\_gas}{ln(1.125)} t a r g e t _ g a s ln ( 1.125 ) 수행하여 해당 숫자에 도달합니다. . 이제 하드코딩된 숫자를 이것으로 바꾸면 원하는 \pm 12.5% ​​± 12.5 변화를 유지할 수 있습니다.

현재 이 변경 사항을 이더리움 개선 제안(EIP)-7742 에 포함시키기 위한 공개 홍보가 진행 중이지만, 이를 모두 묶어서 제안하기보다는 기본 수수료 메커니즘에 대한 다른 변경 사항과 함께 개별적으로 제안하는 것이 좋다고 생각합니다.


3. 과잉 가스 정상화

이는 블롭 타겟을 늘리는 포크 이후 기본 수수료가 급격히 떨어지는 것을 피하기 위한 제안입니다.

포크(Fork) 직후에 기본 수수료가 갑자기 떨어져 블롭 타겟이 증가하는 것을 피하기 위해 이 제안은 초과 가스를 계산하는 방식을 조정할 것을 제안합니다. 일반적으로 기본 수수료는 슬롯당 최대 12.5%까지만 원활하게 변경됩니다. 초과 가스를 정규화하면 기본 수수료가 안정적으로 유지되고 타겟이 증가할 때 예상되는 12.5% ​​한도를 넘어 급격히 떨어지지 않아 수수료 조정을 예측 가능하고 점진적으로 유지할 수 있습니다.

간단히 말해서, 우리는 과도한 가스를 축적하는 대신 정규화된 과도한 가스를 축적합니다. 이렇게 하면 대상 블롭 번호는 중요하지 않습니다.

2024-11-14 04-14-09의 스크린샷
2024-11-14 04-14-09 944×449 27.1KB 의 스크린샷

초과 가스 계산에 정규화 요소를 도입함으로써 누적된 초과 가스를 조정하여 새로운 목표에 비례하도록 할 수 있습니다. 이를 통해 기본 수수료가 원활하게 조정되어 목표가 변경되더라도 일관된 수수료 역학을 유지할 수 있습니다.

정규화는 상수 계수를 사용하여 초과 가스를 조정하여 목표 값과 관계없이 일관된 방식으로 목표와의 편차를 반영하는 것을 포함합니다. 이 접근 방식은 기본 수수료 조정을 예상 한도 내에서 유지하여 네트워크의 수수료 시장을 방해할 수 있는 갑작스러운 하락이나 급증을 방지합니다.

이 변경 사항에 대한 자세한 내용은 이 커밋을 확인하세요.

요약하다

장점

  • 포크(Fork) 이후 기본 수수료 하락을 방지하고 목표 수수료를 인상합니다.
    • blob 사용자를 위한 더 많은 예측 가능성

단점

  • 또 다른 잠재적인 "마이크로 최적화".

타겟 주변의 Blob Base Fee 업데이트 대칭화

타겟을 변경하여 target=\frac{max}{2} t a r g e t = m a x 2 로 설정합니다. 더 이상 유지되지 않으면 대상에서 최소/최대 거리로 변경합니다. 예를 들어, 4개의 블롭 대상과 6개의 최대값으로 이동하면 2개의 블롭이 위로, 4개의 블롭이 아래로 이동할 수 있는 공간이 있습니다.

블롭 타겟 맥스

이제 부정적인 측면에 긍정적인 측면보다 더 많은 여지가 있으므로 기본 수수료는 상승하는 것보다 더 빨리 하락할 수 있습니다.

기본 수수료 대칭
기본 수수료 대칭 843×1043 36KB

이 문제를 간단하게 해결하려면 다음과 같이 하십시오.
우리는 먼저 사용된 가스와 타겟 사이의 델타를 결정합니다(지금 하는 것과 동일). 그런 다음 단순히 target/(max-target) 인 스케일링 인자를 "공간"이 적은 쪽(예: 4/6 타겟/최대를 할 때 "위쪽" 쪽)에 적용합니다.

calc_excess_blob_gas 함수는 다음과 같습니다.

def calc_excess_blob_gas ( parent_header: Header ) -> int :scaling_factor = TARGET_BLOB_GAS_PER_BLOCK / (MAX_BLOB_GAS_PER_BLOCK - TARGET_BLOB_GAS_PER_BLOCK)blob_gas_delta = parent_header.blob_gas_used - TARGET_BLOB_GAS_PER_BLOCK if blob_gas_delta > 0 :scaled_delta = blob_gas_delta * scaling_factor else :scaled_delta = blob_gas_deltaexcess_blob_gas = max ( 0 , parent_header.excess_blob_gas + scaled_delta) return excess_blob_gas

물론, 이 방법은 max-target<target m a x target g e t < t a r g e t 경우 에만 작동하고 이를 훨씬 더 일반화할 수도 있지만, 그럴 가치는 없을 것 같습니다.

이 대칭화 과정의 효과를 더 잘 이해하기 위해 간단한 예를 살펴보겠습니다.

  1. 슬롯이 3개 있다고 가정해 보겠습니다.
    • 처음 두 개의 슬롯에는 각각 6개의 덩어리가 들어 있습니다.
    • 마지막 슬롯에는 0개의 얼룩이 있습니다.
  2. 이로 인해 3개 슬롯에 총 12개의 얼룩이 생깁니다.
  3. 목표는 블록 당 4개의 블롭으로 설정되며, 최대 블롭은 6개입니다.

대칭형 대 비대칭형 기본 요금 조정:

  • 대칭 기본 요금 :

    • 기본 수수료는 약 12.5%씩 두 번(6-blob 슬롯 2개) 증가한 다음 12.5%씩 한 번(0-blob 슬롯) 감소합니다.
    • 이러한 조정 후 기본 수수료는 초기값보다 높아 집니다.
  • 비대칭 기본 요금 :

    • 6-6-0 블롭 시퀀스 이후에도 기본 요금은 변경되지 않습니다.

이 예는 대칭 조정의 이점을 강조합니다.

  • 6-6-0 블롭 시퀀스는 우리를 극단적인 상황(최대 활용 후 전혀 활용되지 않음)으로 몰고 가는데, 이는 바람직하지 않습니다.
  • 이상적으로는 부하는 세 개의 슬롯에 더 균등하게 분산되어야 합니다(예: 각 블록 에 4개의 덩어리).
  • 대칭적 기본 요금은 불균일한 사용(4개 대신 6개의 블롭)에 대해 더 높은 기본 요금으로 "처벌"을 가함으로써 극단적인 행동을 억제하고 더 균형 잡힌 부하를 촉진합니다.
  • 물론, 블롭 사용자는 기본 요금을 올리는 것에 관심이 없을 수도 있다고 주장할 수 있습니다. 왜냐하면 그들은 매 에포크마다 몇 번만 블롭을 게시하면 되고 따라서 6블롭 게시 후의 슬롯에 관심이 없기 때문입니다. 하지만 이 주장은 근시안적입니다.

요약하다

장점

  • 지금처럼 빠르게 "가격 발견"이 이루어지도록 하세요.
  • "극단적"(0과 6개의 얼룩)이 동일한 비율의 증가/감소를 일으키는지 확인하세요.

단점

  • 또 다른 "마이크로 최적화"가 있다면 이를 수행하지 않아도 모든 것이 잘 될 수 있습니다.
  • 일부 경로 종속성을 도입합니다. 예를 들어 gas\_used= target \pm 1\ blobs g a s _used = t a r g e t ± 1 사이 점프 합니다 . b l o b s는 기본 수수료가 시간이 지남에 따라 꾸준히 증가하게 합니다. 이러한 행동은 대상보다 더 많은 blob을 게시하지 않음으로써 상쇄될 수 있으며, 이는 더욱 균형 잡힌 게시 전략에 대한 인센티브를 제공할 수도 있습니다.

출처
면책조항: 상기 내용은 작자의 개인적인 의견입니다. 따라서 이는 Followin의 입장과 무관하며 Followin과 관련된 어떠한 투자 제안도 구성하지 않습니다.
라이크
1
즐겨찾기에 추가
코멘트