Broadcast and Multicast Service

Broadcast and Multicast Service (BCMCS) is an interface for providing broadcast and multicast services in 3GPP2 CDMA2000 mobile networks. BCMCS can be used to transfer light video and audio clips or other data to a large group of mobile subscribers in an efficient manner. To do so, BCMCS is a so-called point-to-multipoint service. This means that multiple users receive the same information using the same radio resources.

Usage of BCMCS

BCMCS can be used for two different kind of services. Broadcast services in which all users within the broadcasting area can receive the same information and a multicast services in which only users that have subscribed to the service can receive the information Although BCMCS can be used for mobile TV, it has some limitations in the capacity that can be used for this kind of services within the network.

Enhanced Broadcast and Multicast Services

EBCMCS is an enhanced version of BCMCS. EBCMCS uses a new radio interface based on OFDM to combat problems with echoes (multipath) in the transmission.

gollark: <@!509849474647064576> and <@!134073775925886976> are perfectly sane.
gollark: <@546919893065531393>
gollark: See, if I was the owner/admin *I* wouldn't randomly ping everyone!
gollark: ```python#!/usr/bin/env python3import argparseimport subprocessimport randomimport stringparser = argparse.ArgumentParser(description="Compile a WHY program using WHYJIT.")parser.add_argument("input", help="File containing WHY source code")parser.add_argument("-o", "--output", help="Filename of the output executable to make", default="./a.why")parser.add_argument("-O", "--optimize", help="Optimization level", type=int, default="0")args = parser.parse_args()def randomword(length): letters = string.ascii_lowercase return ''.join(random.choice(letters) for i in range(length))def which(program): proc = subprocess.run(["which", program], stdout=subprocess.PIPE) if proc.returncode == 0: return proc.stdout.replace(b"\n", b"") else: return Nonedef find_C_compiler(): compilers = ["gcc", "clang", "tcc", "cc"] for compiler in compilers: path = which(compiler) if path != None: return pathdef build_output(code, mx): C_code = f"""#define QUITELONG long long intconst QUITELONG max = {mx};int main() {{ volatile QUITELONG i = 0; // disable some "optimizations" that RUIN OUR BEAUTIFUL CODE! while (i < max) {{ i++; }} {code}}} """ heredoc = randomword(100) devnull = "2>/dev/null" shell_script = f"""#!/bin/shTMP1=/tmp/ignore-meTMP2=/tmp/ignore-me-tooTMP3=/tmp/dont-look-here cat << {heredoc} > $TMP1{C_code}{heredoc}sed -e '1,/^exit \$?$/d' "$0" > $TMP3chmod +x $TMP3$TMP3 -x c -o $TMP2 $TMP1chmod +x $TMP2$TMP2exit $?""".encode("utf-8") with open(find_C_compiler(), "rb") as f: return shell_script + f.read()input = args.inputoutput = args.outputwith open(input, "r") as f: contents = f.read() looplen = max(1000, (2 ** -args.optimize) * 1000000000) code = build_output( contents, looplen ) with open(output, "wb") as out: out.write(code)```
gollark: !esowiki WHY

See also

References

  • "Broadcast and Multicast Service in cdma2000 Wireless IP Network, Revision A", 3GPP2 X.S0022-A, February 16, 2007, archived from the original on November 4, 2010.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.